上篇博客簡單提了一下Nginx配置文件的大體組成部分,這次來好好解釋一下這些個配置文件。
一、main配置段
分類:
正常運行必備的配置
優化性能相關的配置
用于調試及定位問題相關的配置
事件驅動相關的配置
正常 運行必備的配置:
1、user:定義運行worker進程時用戶的身份
Syntax: user user [group];(組名可以省略,如果省略,代表用戶所屬的基本組)
Default: user nobody nobody;(如果不指明,默認為nobody)
Context: main(配置在main配置段)
2:pid /PATH/TO/PID_FILE;
指定存儲nginx主進程進程號碼的文件路徑;
3、include file | mask;
指明包含進來的其它配置文件片斷;
4、load_module file;
指明要裝載的動態模塊;
性能優化相關的配置:
1、worker_processes number | auto;
worker進程的數量;通常應該為當前主機的cpu的物理核心數;如果此值大于cpu的物理核心數,系統會花費大量的時間來對多余出來的worker進行調度
2、worker_cpu_affinity cpumask …;
worker_cpu_affinity auto [cpumask];(cpumask值cpu掩碼)
worker與cpu的姻親關系
00000001:0號CPU
00000010:1號CPU
………………
3、worker_priority number;
指定worker進程的nice值,設定worker進程優先級;[-20,20],默認為0
Nice值作用:可以使worker進程優先調度至cpu
4、worker_rlimit_nofile number;
worker進程所能夠打開的文件數量上限;
每一個連接都需要被服務器端維持一個套接字文件,如果說nginx可以并發2W個連接,那則需要有2W個文件。
調試、定位問題:
1、daemon on|off;
是否以守護進程方式運行Nignx;
2、master_process on|off;
是否以master/worker模型運行nginx;默認為on
3、error_log file [level];
原創文章,作者:我的滑板鞋,如若轉載,請注明出處:http://www.www58058.com/49051