当前位置: 首页 > article >正文

nginx启动报错:worker_connections exceed open file resource limit: 1024

一、问题描述

某次,nginx重启报错: nginx: [warn] 4096 worker_connections exceed open file resource limit: 1024;如下所示:

在这里插入图片描述

二、处理

1)原因:nginx默认最大的并发数为1024,如果你设置worker_connecions这个值大于1024 ,会触发上述告警;

2)处理:我们需要打开nginx的最大文件打开数限制

这里,worker_rlimit_nofile 是nginx用于设置 worker 进程的最大文件打开数限制;它殖民了nginx的worker进程可以打开最大句柄描述符的个数,修改它可更改worker进程的最大打开文件数限制,如果没有设置的话,这个值为操作系统限制。这时nginx可以处理比Ulimit -a更多的文件,所以只需把这个值设置的高一些,nginx就不会有too many open files的问题了。实际,worker_rlimit_nofile限制能够打开多少静态资源或者连接的真正限制,worker_connections是nginx内部连接池的大小计算公式: 最大连接数 = worker_processes * worker_connections/4

修改配置文件,在"event"这行上面添加这一行:

worker_rlimit_nofile xxxxx; ####Specifies the value for maximum file descriptors that can be opened by this process.
在这里插入图片描述

经验值:

当worker_processes设置为1时
worker_rlimit_nofile = 9 + 2 * user_count
worker_connections = 2 + 2 * user_count
worker_processes设置为2时
worker_rlimit_nofile = 10 + 2 * user_count
worker_connections = 2 + 2 * user_count
当有3个worker process时,需要有三个STREAM类型的fd,最小的启动worker_rlimit_nofile是15
最小可以运行的:worker_rlimit_nofile = 7 + 2 * worker_proceses + 2 * user_count


http://www.kler.cn/a/283708.html

相关文章:

  • 卷积神经网络之Yolo详解
  • 【Excel】ToRow超级查找函数
  • ARM架构中断与异常向量表机制解析
  • 穿越数据迷宫:C++哈希表的奇幻旅程
  • opencv常用api
  • RabbitMQ高效的消息队列中间件原理及实践
  • ES6基础----Map的使用
  • 【问题分析】CtsWindowManagerDeviceAnimations【Android15】
  • SpringBoot中@SchedulerLock注解实现定时任务中分布式锁的使用
  • CTFhub通关攻略-SSRF篇【1-5关】
  • windows安装Docker的步骤
  • 内联函数与动态内存分配
  • URP custompasscustom render objects
  • c++多线程交替输出
  • 启动盘如何复原
  • 【一文详解】内外网文件摆渡系统,解决网间数据安全传输问题
  • 【Python进阶(十二)】——自然语言处理
  • 《华为云 AI:开启智能未来的钥匙》
  • zsh 的补全系统
  • 数字芯片设计验证经验分享(第三部分):将ASIC IP核移植到FPGA上——如何确保性能与时序以完成充满挑战的任务!
  • 【FRP 内网穿透】
  • 【问题分析】SetupWizard退出动画卡住【Android15】
  • 【零知识证明】Groth16
  • GAMES202——作业3 Screen Space Ray Tracing
  • 创建型设计模式-构建器(builder)模式-python实现
  • 35. 交错动画 导航列表项的悬停和聚焦效果