1. # main段核心参数:
    2. ### user USERNAME [GROUP]
    3. 解释:指定运行nginxworker子进程的属主和属组,其中属组可以不指定
    4. 示例:
    5. user nginx nginx;
    6. ### pid DIR
    7. 解释:指定运行nginxmaster主进程的pid文件存放路径
    8. 示例:
    9. pid /usr/local/nginx/logs/nginx.pid;
    10. ### worker_rlimit_nofile number
    11. 解释:指定worker子进程可以打开的最大文件句柄数
    12. 示例:
    13. worker_rlimit_nofile 20480;
    14. 备注:linux 最大打开65535个句柄 一般每个worker*cpu核心数=总数-10000
    15. ### worker_rlimit_core size
    16. 解释:指定worker子进程异常终止后的core文件,用于记录分析问题
    17. 示例:
    18. worker rlimit core 50M;
    19. working_directory /usr/local/nginx/tmp;
    20. 备注:当前worker所属用户需要有这个文件夹的写权限
    21. ### worker_processes number|auto
    22. 解释:指定nginx启动的worker子进程数量
    23. 示例:
    24. worker processes 4; worker_processes auto;
    25. ### worker_cpul_affinity cpumask1 cpumask2
    26. 解释:将每个worker子进程与我们的CPU物理核心绑定
    27. 示例:
    28. worker_cpu_affinity 0001 0010 0100 1000; #4个物理核心,4个worker子进程
    29. worker cpu affinity
    30. 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;
    31. #8物理核心,8个worker子进程
    32. worker_cpu_affinity 01 10 01 10; #2个物理核心,4个子进程
    33. 备注:将每个worker子进程与特定CPU物理核心绑定,优势在于:避免同一个worker子进程
    34. 在不同的CPU核心上切换,缓存失效,降低性能;其并不能真正的避免进程切换,
    35. 主要还是cpu时间片切换开销大,又由于是多核,并不能充分使用cpu缓存,所以让nginxworker进程绑定上固定的核心cpu 来切换。
    36. ### worker_priority number
    37. 解释:指定worker子进程的nice值,以调整运行nginxworker子进程的优先级,通常设定为负值,以优先调用nginx
    38. 示例:
    39. worker_priority -10;
    40. 备注:Linux默认进程的优先级值是120,值越小越优先;nice设定范围为-20到+19 如-20+100
    41. ### worker_shutdown_timeout time
    42. 解释:指定worker子进程优雅退出时的超时时间(热部署时,nginx 切换pid进程时发送信号量关闭旧链接请求的强制条件)
    43. 示例:
    44. worker_shutdown_timeout 5s;
    45. ### timer_resolution time
    46. 解释:worker子进程内部使用的计时器精度,调整时间间隔越大,系统调用越少,有利于性能提升;反之,系统调用越多,性能下降,主要看系统对时间精度要求
    47. 示例:
    48. worker_resolution 100ms;
    49. ### daemon on|off
    50. 解释:设定nginx的运行方式,前台还是后台,前台用户调试,后台用于生产
    51. 示例:
    52. daemon off; 前台 默认on
    1. # events段核心参数
    2. ### use
    3. 解释:nginx使用何种事件驱动模型
    4. method可选值:selectpollkqueueepoll、/dev/polleventpor
    5. 默认配置:无 推荐配置:不指定,让nginx自己选择
    6. ### worker_connections
    7. 解释:worker子进程能够处理的最大并发连接数
    8. 默认配置:worker_connections 1024 推荐配置:worker_connections 65535/worker_processes|65535
    9. ### accept_mutex
    10. 解释:是否打开负载均衡互斥锁 (就是在worker子进程都加了个互斥锁,新请求进来只给其中一个处理)
    11. 可选值:onoff
    12. 默认配置:accept_mutex off 推荐配置:accept_mutext on
    13. ### accept_mutex_delay 200ms
    14. 解释:新连接分配给worker子进程的超时时间 accept_mutex参数打开才有意义
    15. ### lock file
    16. 解释:负载均衡互斥锁文件存放路径
    17. 默认配置:lock_file logs/nginx.lock 推荐配置:lock_file logs/nginx.lock
    18. ### muti_accept on|off
    19. 解释:子进程一次性可以接收的新连接个数 默认off