运行网站出现Too many open files,CentOS 6.x和CentOS 7.x解决方法 Linux 面板

新手常见问题: 有没有安装完Appnode,配置好网站正常运行一段时间出现报错: Too many open files  出现以上报错可以根据安装的CentOS不同版本来解决;出现这个报错是请求的文件数超出了系统默认限制。 首先我们SSH远程服务器,运行 ulimit -a 查看 open files 默认值是多少,如下图:

这里我们看到open files默认是1024,可以通过 ulimit -n 2048 来修改默认值,最大可以调到65535,这种方法只针对当前进程有效,重启后又会恢复到默认1024,下面针对CentOS不同版本修改永久生效的办法;   CentOS 6.X  1、CentOS 6.X版本中,检查 /proc/sys/fs/file-max 文件来确认最大打开文件数已经被正确设置,如下图:

2. 

在 /etc/security/limits.conf 文件中设置最大打开文件数, 添加如下这行: 

* - nofile 8192

"nofile"项有两个可能的限制措施。就是项下的hard和soft,要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定, 则hard和soft设定会同时被设定。

  CentOS 7.X 

1、在CentOS 7.X的系统中,使用Systemd替代了之前的SysV,因此 /etc/security/limits.conf 文件的配置作用域缩小了一些。limits.conf这里的配置,只适用于通过PAM认证登录用户的资源限制,它对systemd的service的资源限制不生效。登录用户的限制,与上面讲的一样,通过 /etc/security/limits.conf 来配置即可。

对于systemd service的资源限制,如何配置呢?

2、全局的配置,放在文件 /etc/systemd/system.conf 和 /etc/systemd/user.conf ,同时,也会加载两个对应的目录中的所有.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 条评论
登录 后参与评论

相关文章

来自专栏惨绿少年

日志切割之Logrotate

1663
来自专栏北京马哥教育

Gitlab CE 8.1.3 安装手册(Debian/Ubuntu)

安装概述 Gitlab的安装过程主要包括以下组件的配置: 安装软件包及解决依赖项 Ruby环境 Go 系统用户 数据库(Mysql/Postgresql) Re...

3215
来自专栏逸鹏说道

Web前端性能优化教程02:添加Expires头和压缩组件

本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头。完整教程可查看:Web前端性能优化 什么是Expires头? Expires存储...

3639
来自专栏奇梦博客

运行网站出现Too many open files,CentOS 6.x和CentOS 7.x解决方法

针对新手使用Appnode常见问题: 有没有安装完Appnode,配置好网站正常运行一段时间出现报错: Too many open files  出现以上报错可...

7159
来自专栏北京马哥教育

nginx 总结

1. Nginx无法启动解决方法 在查看到logs中报了如下错误时: 0.0.0.0:80 failed (10013: An attempt was made...

4319
来自专栏云计算教程系列

在腾讯云CVM上安装Apache

Apache HTTP服务器是世界上使用最广泛的Web服务器。它提供了许多强大的功能,包括可动态加载的模块,强大的媒体支持以及与其他流行软件的广泛集成。

3567
来自专栏java思维导图

单点登录(SSO),从原理到实现

如果你觉得文字太长,可以直接先看文末思维导图总结,小编已为你整理了作者的主要观点,供你回顾与快速阅读~

2.2K6
来自专栏Web项目聚集地

Git简洁教程-本地项目推送到GitHub

Git是当今最流行的版本控制软件,它包含了许多高级工具,这里小编就讲一下Git的安装和使用,怎样推送到自己的远程仓库。

1092
来自专栏云计算教程系列

如何在Ubuntu 13.10上从Binary Tarballs安装MariaDB

目前,MariaDB可以直接替代MySQL而不需要任何额外代码配置。本文将介绍如何在Ubuntu 13.10 VPS上安装MariaDB5.5.34 x86_6...

1153
来自专栏曾大稳的博客

OkHttp系统拦截器

RealConnection、ConnectionPool、StreamAllocation

2682

扫码关注云+社区

领取腾讯云代金券