spring zuul 网关个别请求偶尔响应慢的问题

2020-06-24 15:17:48 +08:00
 pmispig
用了 Hystrix Ribbon Feign.
连接数和并发数都不高。
最近偶尔发现有少数请求比较慢,从调用链发现服务的响应很快,zuul 网关收到服务 http 200 响应后,不知道为什么没有及时把响应返回给用户,等待时间有 2-15 秒。
感觉可能是是 httpclient keepalive 造成的,网上搜了半天,不知道怎么把长链接关掉。
请问各位大佬可能还有哪些原因呢?
2359 次点击
所在节点    Java
11 条回复
InkAndBanner
2020-06-24 15:43:17 +08:00
同技术栈 但是没有这个情况
Kyle18Tang
2020-06-24 16:16:38 +08:00
如果你们用了 zipkin,可以拿 TraceId 在 zipkin 看下整个链路的时间,先排除是不是后端的问题。
OldCarMan
2020-06-24 16:16:43 +08:00
个人觉得看看能否捕获问题请求或者抓住问题特征,然后断点 debug,把问题具体化,再分析问题,即使还没整明白问题根源,心里也可能有更加具体的检索关键词。
owenliang
2020-06-24 16:17:49 +08:00
难道不应该看看 JVM 的表现嘛。
zhaorunze
2020-06-24 16:38:31 +08:00
不能是用户手机网速慢嘛
pmispig
2020-06-24 16:51:50 +08:00
@owenliang JVM 的内存,GC,CPU 都是正常的。。
pmispig
2020-06-24 16:52:47 +08:00
@Kyle18Tang 甚至都抓包看了请求,明确看到后端很快返回了 200,在后端的调用链,单独看后端模块,响应时间也是完全正常的
pmispig
2020-06-24 16:53:53 +08:00
@OldCarMan 主要是很难重现,想 trace 都难捕捉到,所以现在只能根据经验去排除一些怀疑比较大的地方
pmispig
2020-06-24 16:55:33 +08:00
@zhaorunze 你说的这个原因,倒是感觉让我惊到了。。。还真有可能是这个原因。。。。。。我先去试试
yfgeek
2020-06-24 21:42:47 +08:00
我只是猜测,会不会和 net.ipv4.tcp_keepalive_time 等系统参数有关
supermoonie
2020-06-25 09:47:40 +08:00
可是接入 pinpoint 做个监控看看,rpc 调用栈一目了然

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/684462

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX