码迷,mamicode.com
首页 > 其他好文 > 详细

Redis连接的客户端(connected_clients)数过高或者不减的问题解决方案

时间:2017-07-30 17:05:40      阅读:1072      评论:0      收藏:0      [点我收藏+]

标签:.net   net   方案   alt   iss   center   ace   失效   tle   

最近的项目上使用ServiceStack.Redis上了redis缓存,其中遇到了很多问题。。 比如说 某一天发现redis做的缓存竟然失效了,然后查了下日志  报错max number of clients reached, sPort: 0, LastCommand:   。。首先考虑的是是不是项目中redis使用完后没有dispose..结果查了半天没发现有哪里忘记dispose。。 之后觉得是redis服务端可能出了问题 重启了下,过了段时间查看redis状态  info指令。。

技术分享

可以看到connected_clients很高 。。多次监控后发现虽然有下降 但是还是在4000以上。

之后在用client list 指令 查看客户端连接情况

技术分享

其中idle(以秒计算的空闲时长)竟然这么长时间。。很多空闲连接都没有被及时释放掉从而导致connected_clients非常高

查看redis的配置timeout (当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能)

技术分享

然后设置timeout

技术分享

再次查看connected_clients

技术分享

瞬间就降下来了。。 至此问题解决!

 

 

技术分享

 

Redis连接的客户端(connected_clients)数过高或者不减的问题解决方案

标签:.net   net   方案   alt   iss   center   ace   失效   tle   

原文地址:http://www.cnblogs.com/hnsongbiao/p/7259291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!