码迷,mamicode.com
首页 > 系统相关 > 详细

Linux server上too many open files问题

时间:2017-06-26 18:56:00      阅读:263      评论:0      收藏:0      [点我收藏+]

标签:测试   pid   创建   pcl   端口   code   安装   tpc   bsp   

之前测试遇到了"too many open files"的问题。ulimit -Hn 查了下发现server上最大open file数是4096。写了个简单的脚本检测发现进程创建的fd个数在不断增加,8分钟之后达到上限然后程序报错,其中绝大部分fd都是关于socket的。

 

在server上安装lsof查看当前进程打开文件,并定位出现频率最高的通信主机和端口。最后发现是一个Java程序bug,每两秒执行一次的方法会不断创建新的httpclient。修正bug后进程创建的fd数稳定在24。

 

lsof -i -a -p $PID 可以列出进程打开的所有network files。所用的简单检测脚本为

#!/bin/bash

cd /proc/$(ps -ef | grep appName | grep -v grep | awk {print $2})/fd

while true

do

ls -l | grep socket | wc -l

sleep 5

done 

 

 

Linux server上too many open files问题

标签:测试   pid   创建   pcl   端口   code   安装   tpc   bsp   

原文地址:http://www.cnblogs.com/codingforum/p/7081747.html

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