1. 程式人生 > >Nginx性能調優

Nginx性能調優

nginx

Nginx性能調優

優化配置文檔:nginx.conf,默認路徑是/usr/local/nginx/conf/nginx.conf

性能調優步驟:

1worker_processes 8

定義了nginx對外提供WEB服務時的worker進程數,最優值取決於許多因素,包括CPU核的數量、存儲數據的硬盤數量及負載模式等。建議按照CPU的數量來指定,比如有8CPU,可以寫成worker_processes 8,為每個進程分配8CPU

worker_cpu_affinity 00000001 00000010 0000010000001000 00010000 00100000 01000000 10000000

2worker_rlimit_nofile 65535

nginx

進程打開最多文件描述符數目,與ulimit -n的值保持一致就好

3useepoll

epoll是多路復用IO中的一種方式,應用於linux2.6以上內核,可以大大提高nginx的性能。

4worker_connections102400

每個進程允許的最多連接數,最大連接數=連接數*進程數

5keepalive_timeout90

keepalive超時時間,客戶端到服務器端的連接持續有效時間,當出現對服務器的後繼請求時,keeplive-timeout功能可避免建立或重新建立連接,節省服務器資源、CPU、內存、網卡。服務器在這個超時時間後會關閉鏈接,我們將它設置低些可以讓

nginx持續工作時間更長,一般不超過120秒。

6gzip on;

gzip_min_length 1k;

gzip_buffers416k;

gzip_http_version 1.1;

gzip_comp_level 4:

開啟gzip壓縮,nginx可以采用gzip壓縮的形式發送數量,減少我們發送的數據量。並修改壓縮級別大小,最大為9,值越小,壓縮後比例越小,CPU處理更快,級別設置為4最適宜。

7proxy_connect_timeout60; #nginx跟後端服務器連接超時時間(代理連接超時

)

proxy_send_timeout60#後端服務器數據回傳時間(代理發送超時)

proxy_read_timeout 60#連接成功後,後端服務器響應時間(代理接收超時)

把與後端服務連接的超時時間設置小些,讓nginx的持續工作的時間更長

8open_file_cache max=65535 inactive=60s

這個將為文件制定緩存,默認是沒有啟動的,max指定緩存數量,建議和打開文件數一致,inactive是指經過多長時間文件沒被請求後刪除緩存。

9open_file_cache_valid 80s

這個是指多長時間檢查一次緩存的有效信息。

10open_file_cache_min_uses 1

open_file_cache指令中的inactive參數時間內文件的最少使用次數,如果超過這個數字,文件描述符一直是在緩存中打開的,如果有一個文件在Inactive時間內一次沒被使用,它將被移除。


本文出自 “蠟筆xiao馨” 博客,謝絕轉載!

Nginx性能調優