nginx socket() failed (24: Too many open files)
访问量的增大,相应nginx连接数,以及打开的文件数,是需要调整的,不然就会报以下错误
2019/10/10 16:04:37 [alert] 364127#0: *11935302 socket() failed (24: Too many open files) while connecting to upstream, client: 220.195.66.66, server:。。。。。。。。。。。。。。。。。
说正文前,先看一下,流量图
最近一周平均2000多万,一台nginx反代了四台
1,查看打开文件的限制
1 2 3 4 | [root@namenode1 nginx]# ulimit -Hn //硬 10240 [root@namenode1 nginx]# ulimit -Sn //软 10240 |
这个配置已不够,要加大
2,加大可打文件的上限
1 2 3 4 5 6 | [root@namenode1 nginx]# vim /etc/security/limits.conf //尾部追回 * soft nofile 65535 * hard nofile 65535 [root@namenode1 nginx]# sysctl -p //配置生效 |
*的意思是所有用户,也可以nginx soft nofile 65535,表示只调整nginx用户的打开文件上限。
重新登录或者重新ssh,ulimit -Hn才能看到变化
1 2 3 4 | [root@namenode1 ~]# ulimit -Hn 65535 [root@namenode1 ~]# ulimit -Sn 65535 |
3,配置nginx
1 2 3 4 5 6 7 8 9 10 11 12 13 | # vim /etc/nginx/nginx.conf worker_rlimit_nofile 65535; //添加 events { worker_connections 20480; //修改 } [root@namenode1 nginx]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful [root@namenode1 nginx]# systemctl reload nginx |
worker_connections这个参数,建议逐步加大。
重载后,error.log就没有报这个错误了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)