加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

记一次找因Redis行使不妥导致应用卡死Bug的进程

发布时间:2019-10-12 09:02:21 所属栏目:编程 来源:小木
导读:起首说下题目征象:内网sandbox情形API一连1周呈现应用卡死,全部api无相应征象 刚开始当测试诉苦情形相应慢的时辰 ,我们重启一下应用,应用规复正常,于是没做处理赏罚。可是其后题目呈现频率越来越频仍,越来越多的同事开始诉苦,于是感受代码也许有题目,

个中有段代码

  1. if (p == null) {   
  2.     if (borrowMaxWaitMillis < 0L) {   
  3.         p = (PooledObject)this.idleObjects.takeFirst();   
  4.     } else {   
  5.         waitTime = System.currentTimeMillis();   
  6.         p = (PooledObject)this.idleObjects.pollFirst(borrowMaxWaitMillis, TimeUnit.MILLISECONDS);   
  7.         waitTime = System.currentTimeMillis() - waitTime;   
  8.     }   
  9. }  

borrowMaxWaitMillis<0会一向执行,然后一向轮回了 开始猜疑这个值没有设置

找到redis pool设置,发明晰实没有设置MaxWaitMillis,设置后else代码也是一个Exception 并不能办理题目

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读