zoukankan      html  css  js  c++  java
  • 分析错误:socket accept failed too many open files

    步骤:
    1、--查看当前各个进程打开的文件句柄数,其结果的第一列表示句柄数,第二列表示进程号
    lsof -n|awk '{print $2}'|sort|uniq -c |sort -nr|more

    2、--查看单个进程能够打开的最大文件句柄数量(socket连接也算在里面)
    ulimit -n

    3、对比1和2的结果,如果1接近或超过2了,需要将2的配置调大
    ulimit -n <最大文件句柄数>

    4、如果想知道打开的文件句柄数最多的进程是哪个应用程序,可以使用如下命令
    ps -aef|grep <进程号>

    5、如果句柄数调的非常大了,还是不行,可能需要看看/proc/sys/fs/file-max中的值,该值表示系统全局的可用句柄数,可修改
    vim /proc/sys/fs/file-max

    6、对于正在使用(分配出去)的所有的句柄数、未使用的所有的句柄数、可使用的最大的句柄数这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.

  • 相关阅读:
    idea连接数据库和版本控制(Version Control)
    Idea新手入门-部署tomcat
    Redis 列表(List)
    Redis 集合(Set)
    Redis中的哈希(Hash)
    Redis初步整理
    C#中的集合之ArryList
    linux中pip安装步骤与使用详解
    搭建 LAMP 环境
    搭建WordPress 个人博客
  • 原文地址:https://www.cnblogs.com/anai/p/5889353.html
Copyright © 2011-2022 走看看