apache / apache/servicecomb-java-chassis

客户端调用服务器在一定压力下(非常小的并发)报错,且 get connection 非常长

未关闭
#3,475 5 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Java
星标
1.9k
派生
814
平均合并
8 天 23 小时
30 天内合并 PR
1

描述

2022-11-11 17:24:04.180 WARN 2267 --- [service-tomcat-1163] o.a.s.m.c.publish.SlowInvocationLogger : 56 slow(1000 ms) invocation, CONSUMER rest crmadapter.crmAdapterService.queryProdInstIot:
http method: POST
url : /ICRMAdapterService/queryProdInstIot/
server : rest://10.0.3.138:8081
status code: 408
total : 40004.524 ms
prepare : 0.22 ms
handlers request : 32122.667 ms
client filters request : 0.78 ms
send request : 0.355 ms
get connection : 32122.307 ms
write to buf : 0.448 ms
wait response : 0.0 ms
wake consumer : 0.0 ms
client filters response: 0.0 ms
handlers response : 0.0 ms
2022-11-11 17:24:04.181 ERROR 2267 --- [service-tomcat-1163] c.h.m.p.e.GlobalExceptionHandler : 118 RuntimeException:

org.apache.servicecomb.swagger.invocation.exception.InvocationException: InvocationException: code=408;msg=CommonExceptionData{code='SCB.00000004', message='Invocation Timeout.', dynamic={}}
at org.apache.servicecomb.core.provider.consumer.SyncResponseExecutor.guardedWait(SyncResponseExecutor.java:90)
at org.apache.servicecomb.core.provider.consumer.SyncResponseExecutor.waitResponse(SyncResponseExecutor.java:58)
at org.apache.servicecomb.core.provider.consumer.InvokerUtils.innerSyncInvokeImpl(InvokerUtils.java:210)
at org.apache.servicecomb.core.provider.consumer.InvokerUtils.lambda$decorateSyncRetry$cf34ec48$2(InvokerUtils.java:263)

贡献指南

这个仓库没有索引到贡献指南

调研方向

从提供的 SlowInvocationLogger 输出以及堆栈跟踪入口 SyncResponseExecutor.java、InvokerUtils.java 和客户端连接获取路径开始。以报告中的低并发度重现超时,然后跟踪 get connection 为什么会占用请求的大部分时间。在确定原因并修正和验证超时行为后,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
backend
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。