Nginx 全局配置


 

 nginx的配置

Main全局配置段常見的配置指令分類
1、正常運行必備的配置
2、優化性能相關的配置
3、用於調式及定位問題的相關配置
4、時間驅動相關的配置

 

幫助文檔:
http://nginx.org.en/docs/

全局配置文件的地方

 

1、正常運行必備的配置

◆正常運行必備的配置 :
◆幫助文檔: http://nginx.org/en/docs/ngx_ core. module.html
➢1、user
  Syntax:  user user [group];
  Default:  user nobody nobody;
  Context:  main
  指定worker進程的運行身份,如組不指定,默認和用戶名同名
➢2、pid /PATH/TO/PID_ FILE
  指定存儲nginx主進程PID的文件路徑
➢3、include file| mask
  指明包含進來的其它配置文件片斷
➢4、load_ module file
  模塊加載配置文件: /usr/share/nginx/modules/*.conf
  指明要裝載的動態模塊路徑: /usr/lib64/nginx/modules

 

 

1.1、user

使用ps -aux進行查看相關的服務

 

 

 

修改配置user

 

 

 

 

進行語法檢測以及配置文件的重新加載

 

 

 

查看服務進程

系統默認使用nginx即系統在安裝時就進行創建賬號

 

1.2、pid

 

 

 

進行的編號(master)

服務一旦停止文件立即消失
只有在服務啟動時候才會生成文件

 

1.3、load_modules

主要的為二級文件都存放在usr/shaer/nginx/READE.dynamic中

 

2、性能優化相關配置

➢1、worker processes nymber | auto
    worker進程的數量;通常應該為當前主機的cpu的物理核心數


➢2、worker_ cpu _affinity cpumask..
    worker _cpu_ affinity auto [qpumask]提高緩存命中率
    CPU MASK : 00000001 : 0號CPU
          00000010 : 1號CPU
          10000000 : 8號CPU
    worker_ cpu affinity 0001 0010 0100 1000;
    worker_ .cpu_ _affinity 0101 1010;


➢3、worker_ priority number
  指定worker進程的nice值,設定worker進程優先級: [-20,20]


➢4、worker_ rlimit_ nofile number
  worker進程所能夠打開的文件數量上限,如65535

 

 

2.1、worker_process

 

 

 

默認值是auto
此時修改值為auto
根據內核來計算的

 

 

 

2.2、worker_cpu_affinity auto

提高緩存的命中率
CPU MASK :
00000001:0號cpu
00000010:1號cpu
10000000:8號cpu
主要觀察1的位置

worker_cpu_affinity 00001 0010 0100 1000;

是要根據worker_press中的數量進行相關的計算
此時令其等於2

 

 

 

 

 

 

查看相關nginx的服務工作地址
ps axo pid,cmd,psr|grep nginx

 

 

 

可以使用watch -n ''去監控查看相關的端口號變化

 

 

 

在某些條件下的cpu會發生改變
此時則需要進行固定可以提高cpu的緩存利用率

修改配置文件

 

 

 

查看相關的綁定

 

 

 

2.3、worker_priority number

相關優先級

查看優先級
ps axo pid,cmd,psr,nice|grep nginx
默認優先級是0

 

 

 

優先級范圍是-20 ~ 20

進行修改優先級

 

 

 

修稿之后的優先級

 

 

 

 

2.4、worker_rlimit

進程能夠打開的文件數量上限如65535
希望能夠支持多個用戶並發
可以服務多少個用戶進程

 

3、事件驅動相關配置

➢events{

    ......

    }


➢1、worker_ connections number
  每個worker進程所能夠打開的最大並發連接數數量,如10240
  總最大並發數: worker_ processes * worker_ connections


➢2、use method
  指明並發連接請求的處理方法,默認自動選擇最優方法use epoll;
➢3、accept_ mutex on| off互斥
  處理新的連接請求的方法; on指由各個worker輪流處理新請求

  Off指每個新請求的到達都會通知(喚醒)所有的worker進程

  但只有一個進程可獲得連接 ,造成“驚群”,影響性能

 

 

3.1、worker_connections number

每個worker的能夠打開的最大並發鏈接數據

 

 worker_rlimit = worker_processes * worker_connections

 

3.2、use method

指明並發鏈接請求的處理方法
默認自動選擇最優方法

use epoll;

 

3.3、accept_mutex on|off 互斥

處理請求的鏈接請求的方法
on指由各個worker輪流處理請求
off指每個請求的到達都會通知所有的worker進程,但是只有一個進程可以獲得鏈接,造成“精群”,影響性能

 

4、調式和定位問題

➢1、daemon: on|off
  是否以守護進程方式運行nignx ,默認是守護進程方式
➢2、master_ process on|off
  是否以master/worker模型運行nginx ;默認為on
  off將不啟動worker
➢3、error_ log file [level]
  錯誤日志文件及其級別;出於調試需要,可設定為debug ;但debug僅在編譯時
  使用了"--with-debug" 選項時才有效


  方式: file /path/logfile;
  stderr:發送到標准錯誤
  syslog:server- address[parameter =values]:發送到syslog memory:size內存
  level:debuglinfo|notice|warnlerrorlcritlalterlemerg

 

4.1、daemon on|off

是否以守護進程的方式運行nginx
默認時守護進程
即可以后台運行

進行修改為off

 

 

服務就會在前台運行

 

 

 

4.2、master_process on|off

是否已master/worker模型運行nginx 默認為on
off將不啟動worker

進行修改文件

 

 

此時查看相關進程
此時就是獨立的進程沒有work進程

 

 

4.3、error_log file[level]

錯誤日志即級別
處於調試的需要
可以設定為debug,但debug僅在編譯時使用了 --with-debug 才有效

修改位置

 

 

查看錯誤文件

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM