题解 | 微服务架构下的深层依赖链路漏洞影响面分析

微服务架构下的深层依赖链路漏洞影响面分析

https://www.nowcoder.com/practice/a8416ddac26b427c97d8a8c6a7d14779

with RECURSIVE temp as (
    # 1、Payment_Gateway作为被调用,找到主调服务
    select
    s2.service_id,
    s2.service_name,
    1 as dependency_depth,
    concat('Payment_Gateway->', s2.service_name) as dependency_path
    from service_dependencies sp
    join services s on sp.callee_service_id = s.service_id # 关联被调用方(Payment_Gateway
    join services s2 on sp.caller_service_id = s2.service_id # 关联主调用方(直接依赖)
    where year(first_call_date) = 2025
    and s.service_name = 'Payment_Gateway' # 被调用方是 Payment_Gateway

    union all 

    # 上层作为被调服务,找到本层的主调服务
    select 
    s2.service_id as service_id,
    s2.service_name,
    t.dependency_depth + 1,
    concat(t.dependency_path, '->', s2.service_name)
    from temp t 
    join service_dependencies sp on sp.callee_service_id = t.service_id # 上一层的主调用服务 → 本层的被调用服务
    join services s2 on sp.caller_service_id = s2.service_id # 关联本层的主调用服务
    where year(first_call_date) = 2025
)

select * from temp
order by dependency_depth,service_id,dependency_path
;

全部评论

相关推荐

飞屋一号:实话实说就行,先争取一下能不能线上,不行就直接放弃,付出与回报不成正比
我的求职进度条
点赞 评论 收藏
分享
评论
6
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务