我在网站中使用了redis作为缓存系统,并且用了它的pecl客户端(就是这个 https://github.com/nicolasff/phpredis)。
使用没什么问题,但是最近再看链接数的时候发现了个问题,就是后台链接数特别高
上图可以看到netstat -na | grep 6379
后的端口占用情况,其实还有几个屏幕,我就不贴了。我想问的是,这是客户端的bug还是它本身就是这样?如果它本身就是这样,那这样占用下去会不会出什么问题,还是它自己有个上限的?因为我没有看到它的配置或者初始化参数里有连接池之类的设置,所以可以肯定这应该不是连接池的hold状态。
我看到它的连接方法有connect和pconnect,我目前用的是connect,因为参照对mysql_pconnect的理解,现在请求数不是很大,也就没有必要用connect,而且它也应该在脚本结束后释放连接。现在的情况是,这些连接似乎只会在redis的server端在超时时间30秒后被自动断掉。
我担心如果以后请求数大了,30秒内就会被撑暴了。
你都是用的短连接,所有有那么多的timewait的连接,这个很正常,改成pconnect试试,会好点。短连接的情况下这个是正常的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。