aix inetd方式启动的服务CLOSE_WAIT
aix以inted的方式启动了一个tcp提供文件操作方面服务的服务程序,
当并发很多的时候,发现:
1.inetd压力过大的时候,会直接拒绝掉连接。
2.有大量CLOSE_WAIT状态的连接:通过netstat -an 看到的。
3.ps -ef 都不能显示了,直接报分配不出内存。查/proc下的id数目有7w之多。
请问:
有什么方法能让定期清理这些close_wait状态的?或者有什么方法避免出现这种现象?
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
将tcp_keepintvl 参数调低
no -o tcp_keepintvl=30
谢谢
有一位大侠叫东方蜘猪,发过很多好贴子,不过不知道为什么被禁言了.请看下面的连接对你也很有用地:
http://bbs.chinaunix.net/viewthread.php?tid=1128015
关于LSOF的使用:
lsof -i |grep -i 23|grep -i close_wait
23就是你出问题的端口号.TELNET用的是23,你没有用23啊.
关于避免的方法:
有个美女做过一个解释我想对你有帮助,多数和应用程序有关吧:
请看下面的连接:
http://blog.chinaunix.net/u2/82382/showart_2059658.html
这个问题以前有人给过解释,原因也就是Socket的Client端出现异常没有Close就退出了.需要用lsof 去查看那些进程处于这样一来的状态,杀死该进程,问题就解决了,但是因为是杀进程,你自己要小心了.什么该杀什么不该杀心理要有数才行. 我们的环境我敢杀,你们的环境我不敢杀,你敢杀但是你要有胆才行.杀完以后你们处长蹦起来了,那就麻烦了.