Nginx效能調優引數設定

2021-10-04 16:18:00 字數 1977 閱讀 6916

1.1阻塞和非阻塞網路模型

同步阻塞模型,當相求程序或者執行緒數量增加到一定程度後,效能會急劇下降,負載率不高。(不建議使用)

nginx基於事件的非阻塞多路復用(epool或kquene)模型,乙個程序在短時間內可以響應大量的請求。(建議使用)

1.2cpu個數

建議:小於等於cpu核心的數量,一般高於cpu數量會產生程序切換開銷的負面影響。

worker_processes 2;

2.1將work_process繫結到特定的cpu上,避免cpu間切換的開銷。

2.2設定方法

2核cpu的配置

worker_cpu_affinity 01 10;

4核cpu的配置

worker_cpu_affinity 0001 0010 0100 1000;

8核cpu的配置

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 1000000;

一般設定為655350

每個程序最大開啟檔案描述符數量,linux系統上檔案描述符比較廣義:網路埠、裝置、磁碟檔案都是。檔案描述符用完了,新的連線會被拒絕,產生502類錯誤。

linux設定最大開啟檔案數可通過 ulimit -n 655350設定。

worker_rlimit_nofile 655350;

4.1 worker_connections

併發響應能力的關鍵配置,每個程序允許的最大同時連線數=worker_connections * worker_processes

要注意的是這邊最大同時連線數不等同於響應的使用者數量,靜態伺服器最大連線數= worker_connections * worker_processes / 2

做反向**伺服器時,最大連線數=worker_connections * worker_processes / 4

worker_connections 10000;

4.2指定使用epoll或kquene

use epoll

5.1日誌io有關設定

關閉access_log日誌,減小io開銷,但是就不會產生訪問資訊,不利於業務分析,不建議使用。

access_log off

至記錄錯誤日誌減小io壓力

error_log logs/error.log crit

啟用核心複製模式,保持開啟達到最快io效率

sendfile on

tcp_nopush on

tcp_nodelay on 禁用nagle演算法

啟動上述兩個配置項,會在資料報達到一定大小後傳送資料,這樣會減少網路通訊次數,降低阻塞概率,但會影響響應及時性。

keepalive_timeout 30s;

http1.1支援持久連線alive,降低每個連線的alive時間可以在一定程度上提高可響應連線數量,所以一般可適當降低此值.

開啟內容壓縮

gzip on

內容壓縮長度設定,過短內容壓縮效果不好,壓縮過程還會浪費系統的資源

gzip_min_length 1000

內容壓縮級別 1-9級,壓縮級別越高壓縮率越高,但對系統效能要求越高

gzip_comp_level 4

壓縮的內容類別,多個使用空格隔開

open_file_cache max=655350 inactive=20s

最大快取檔案數量,檔案未使用存活期

open_file_cache_valid 20s

驗證快取有效期時間間隔

open_file_cache_min_uses 2

有效期內檔案最少使用次數

HDFS Balance調優引數設定

問題背景與現象 當hdfs集群各個datanode儲存的資料不均衡時,需要使用hdfs balance功能,調整相關引數可以提公升balance效能。操作步驟 修改如下引數 dfs.datanode.max.transfer.threads 8192 dfs.namenode.replication...

調優 Nginx效能調優

一.nginx優化配置 1.主配置檔案優化 注 部分配置詳解 worker processes 8 nginx程序數,建議按照cpu數目來指定,一般為它的倍數。worker cpu affinity 00000001 00000010 00000100 00001000 00010000 00100...

Nginx 效能調優

一.nginx優化配置 1.主配置檔案優化 注 部分配置詳解 worker processes 8 nginx程序數,建議按照cpu數目來指定,一般為它的倍數。worker cpu affinity 00000001 00000010 00000100 00001000 00010000 00100...