GRPC的context级联关闭导致请求被cancel
背景线上遇到奇怪的GRPC请求失败, 看日志提示 context is cancelled. 而且报错时间与请求发出的时间很接近, 根本还没达到超时时间.我们有如下场景ServiceA -异步-> ServiceB -异步-> ServiceC服务A调用服务B, B收到请求之后又会去请求服务C.B返回给A的结果并不依赖B请求C的结果, 因此B会尽快返回给A.分析一旦B返回, B与A之间的context就被cancel, 而B与C的context是继承于前者..
原创
2020-10-12 16:19:25 ·
3631 阅读 ·
2 评论