记录一次网关无响应的排查

1. 使用jstack  pid >  thread.txt 打印进 thread.txt 文件里

去观察线程的状态。

我发现,一个线程在经过 rateliter的prefilter后, 先是调用 consume方法,获取到锁。

接着在执行 jedis的 evalsha命令时 一直卡在socket.read()的状态。

发现jedis官网也有一些对应的issue, 我使用的jedis版本是3.1.0 太久了,导致执行 evalsha命令时,旧的jedis源码 设置了无限长的 jedis操作时间。

setTimeoutInfinite() in eval() · Issue #1147 · redis/jedis · GitHub

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值