使用交流
首页
使用交流
通知公告
文档资源
搜索
登录
使用交流
运行网站出现Too many open files,CentOS 6.x和CentOS 7.x解决方法
运行网站出现Too many open files,CentOS 6.x和CentOS 7.x解决方法
奇梦
2017-11-24
2464
本帖最后由 奇梦 于 2018-1-8 12:29 编辑
新手常见问题:
有没有安装完Appnode,配置好网站正常运行一段时间出现报错:
[backcolor=red] Too many open files [/backcolor]
出现以上报错可以根据安装的CentOS不同版本来解决;
出现这个报错是请求的文件数超出了系统默认限制。
首先我们SSH远程服务器,运行
[backcolor=red] ulimit -a [/backcolor]
查看
[backcolor=deepskyblue] open files [/backcolor]
默认值是多少,如下图:
这里我们看到open files默认是1024,可以通过[backcolor=red]
ulimit -n 2048
[/backcolor]
来修改默认值,最大可以调到65535,
这种方法只针对当前进程有效,重启后又会恢复到默认1024,下面针对
CentOS不同版本修改永久生效的办法;
[backcolor=darkorange]
CentOS 6.X
[/backcolor]
1、CentOS 6.X版本中,检查
[backcolor=deepskyblue] /proc/sys/fs/file-max [/backcolor]
文件来确认最大打开文件数已经被正确设置,如下图:
2. 在
[backcolor=rgb(0, 191, 255)]
/etc/security/limits.conf
[/backcolor]
文件中设置最大打开文件数,
添加如下这行
:
#
* - nofile 8192
"nofile"项有两个可能的限制措施。就是项下的hard和soft,要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定, 则hard和soft设定会同时被设定。
[backcolor=darkorange] CentOS 7.X [/backcolor]
1、在CentOS 7.X的系统中,使用Systemd替代了之前的SysV,因此
[backcolor=deepskyblue] /etc/security/limits.conf [/backcolor]
文件的配置作用域缩小了一些。limits.conf这里的配置,只适用于通过PAM认证登录用户的资源限制,它对systemd的service的资源限制不生效。登录用户的限制,与上面讲的一样,通过
[backcolor=deepskyblue] /etc/security/limits.conf [/backcolor]
来配置即可。
对于systemd service的资源限制,如何配置呢?
2、全局的配置,放在文件[backcolor=deepskyblue]
/etc/systemd/system.conf
[/backcolor]和
[backcolor=deepskyblue] /etc/systemd/user.conf [/backcolor]
,同时,也会加载两个对应的目录中的所有.conf文件/etc/systemd/system.conf.d/*.conf和/etc/systemd/user.conf.d/*.conf
其中,system.conf是系统实例使用的,user.conf用户实例使用的。一般的sevice,使用system.conf中的配置即可。systemd.conf.d/*.conf中配置会覆盖system.conf。
修改了system.conf后,需要重启系统才会生效。编辑/usr/lib/systemd/system/nginx.service文件,做如下配置:
[Service]
LimitCORE=infinity
LimitNOFILE=100000
LimitNPROC=100000
然后运行如下命令,才能生效。
sudo systemctl daemon-reload
sudo systemctl restart nginx.service
查看一个进程的limit设置:cat /proc/YOUR-PID/limits
收藏
0
收藏的用户(
0
)
X
正在加载信息~
最新回复
(
2
)
500
2017-12-28
引用
2
楼
支持,不过一般没有设置这么小值的vps了
奇梦
2018-1-2
引用
3
楼
Quote
500 发表于 2017-12-28 16:20
支持,不过一般没有设置这么小值的vps了
哈哈 偶遇代码特工组成员,我用的不是vps 默认值都小:lol
返回
发新帖
奇梦
搜索