Nginx伺服器的一些優化,輕鬆突破十萬併發

來源:互聯網
上載者:User
關鍵字 伺服器 nginx 併發

nginx指令中的優化(設定檔)

worker_processes 8;

nginx進程數,建議按照cpu數目來指定,一般為它的倍數。

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

為每個進程分配cpu,上例中將8個進程分配到8個cpu,當然可以寫多個,或者將一個進程分配到多個cpu。

worker_rlimit_nofile HTTP://www.aliyun.com/zixun/aggregation/12560.html">102400;

這個指令是指當一個nginx進程打開的最多檔描述項數目,理論值應該是最多打開檔數(ulimit -n)與nginx進程數相除,但是nginx分配請求並不是那麼均勻,所以最好與ulimit -n的值保持一致。

use epoll;

使用epoll的I/O模型,這個不用說了吧。

worker_connections 102400;

每個進程允許的最多連接數,理論上每台nginx伺服器的最大連接數為worker_processes*worker_connections。

keepalive_timeout 60;

keepalive超時時間。

client_header_buffer_size 4k;

用戶端請求頭部的緩衝區大小,這個可以根據你的系統分頁大小來設置,一般一個請求的頭部大小不會超過1k,不過由於一般系統分頁都要大於1k,所以這裡設置為分頁大小。 分頁大小可以用命令getconf PAGESIZE取得。

open_file_cache max=102400 inactive=20s;

這個將為打開檔指定緩存,預設是沒有啟用的,max指定緩存數量,建議和打開檔數一致,inactive是指經過多長時間檔沒被請求後刪除緩存。

open_file_cache_valid 30s;

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

open_file_cache_min_uses 1;

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.