欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

CentOS Too Many Open Files 解决

程序员文章站 2022-05-27 22:06:24
问题: 在使用 WRK 对应用服务进行压测的时候,提示 "too many open files" 信息,导致无法启动测试。 原因: CentOS 7.x 默认的打开文件数目限制为 ,如果在使用其他软件出现 "too many open files" 的错误。 解决: 只需要更改 文件里面的内容,增 ......

问题:
在使用 wrk 对应用服务进行压测的时候,提示 "too many open files" 信息,导致无法启动测试。

原因:
centos 7.x 默认的打开文件数目限制为 1024,如果在使用其他软件出现 "too many open files" 的错误。

解决:
只需要更改 /etc/security/limits.conf 文件里面的内容,增加如下信息即可。

* soft nproc 80000
* hard nproc 80000
* soft nofile 80000
* hard nofile 80000

其中 * 代表所有用户,你可以指定特定的用户。

上面的 nproc 是允许创建的子进程数目,不能过大,防止 accidental fork bombs,一般 4096 比较合适
高级一点的做法:
将配置写到 /etc/security/limits.d/nofile.conf 这种不直接写到系统 limits 文件中,当 limits 需要升级时,不会丢失配置
另外一种做法:
在系统启动过程中,执行一次 ulimit -shn 65533, 比如可以写到 /etc/rc.local 中,或者 /etc/profile 中。