3、描述nginx中worker_processes、worker_cpu_affinity、worker_rlimit_nofile、worker_connections配置项的含义
3、描述nginx中worker_processes、worker_cpu_affinity、worker_rlimit_nofile、worker_connections配置项的含义
nginx中worker_processes、worker_cpu_affinity、worker_rlimit_nofile、worker_connections配置项属于全局配置项。
Main全局配置段常见的配置指令分类
正常运行必备的配置
优化性能相关的配置
用于调试及定位问题相关的配置
事件驱动相关的配置
worker_processes:
属于全局配置,启动工作进程数数量 。
worker_cpu_affinity:
将Nginx工作进程绑定到指定的CPU核心,默认Nginx是不进行进程绑定的,绑定并不是意味着当前nginx进程独占以一核心CPU,但是可以保证此进程不会运行在其他核心上,这就极大减少了nginx的工作进程在不同的cpu核心上的来回跳转,减少了CPU对进程的资源分配与回收以及内存管理等,因此可以有效的提升nginx服务器的性能。
例如:
worker_cpu_affinity 00000001 00000010 00000100 00001000 | auto ; 自动绑定00000001(0号CPU),00000010(1号CPU) ……
worker_rlimit_nofile:
所有worker进程能打开的文件数量上限,包括:Nginx的所有连接(例 如与代理服务器的连接等),而不仅仅是与客户端的连接,另一个考虑因素是实际的并发连接数不能超过系统级 别的最大打开文件数的限制.最好与ulimit -n 或者limits.conf的值保持一致。
例如:
下面这两项要同时配置:
worker_rlimit_nofile 65536;
修改pam限制
[root@centos8 ~]#cat /etc/security/limits.conf
* soft nofile 1000000
* hard nofile 1000000
worker_connections:
设置单个工作进程的最大并发连接数
worker_connections 65536;