步驟:
一、--查看當前各個進程打開的文件句柄數,其結果的第一列表示句柄數,第二列表示進程號
lsof -n|awk '{print $2}'|sort|uniq -c |sort -nr|more
二、--查看單個進程可以打開的最大文件句柄數量(socket鏈接也算在裏面)
ulimit -n
三、對比1和2的結果,若是1接近或超過2了,須要將2的配置調大
ulimit -n <最大文件句柄數>
四、若是想知道打開的文件句柄數最多的進程是哪一個應用程序,可使用以下命令
ps -aef|grep <進程號>
五、若是句柄數調的很是大了,仍是不行,可能須要看看/proc/sys/fs/file-max中的值,該值表示系統全局的可用句柄數,可修改
vim /proc/sys/fs/file-max
六、對於正在使用(分配出去)的全部的句柄數、未使用的全部的句柄數、可以使用的最大的句柄數這3個值,能夠經過如下只讀文件查看
vim /proc/sys/fs/file-nr
提示:當分配出去的句柄數接近最大句柄數,而「未使用的句柄數」遠大於零時,代表你遇到了一個「句柄」使用高峯,這意爲着你不須要增長file-max的值。
原文以下:
When the allocated file handles come close to the maximum, but the number of unused file handles is significantly greater than 0,
you’ve encountered a peak in your usage of file handles and you don’t need to increase the maximum. vim