遇到的问题
压力测试环境,发现某应用的线程数和打开文件句柄数持续飙高,并且不释放。
-
文件句柄打开数-已超过系统阈值
fileopen.png -
线程数
thread.png
处理步骤
1.登录到linux服务器
top命令查找CPU占用率最高的进程PID:45327
2.lsof -p 45327
列出当前进程的所有文件句柄列表:
list.png
3.参见上图,发现本应用建立了很多调用端口号为24265的TCP连接。判断问题为:建立连接后,没有释放资源。
4.分析本应用建立连接的代码,进行优化。
网友评论