1. 程式人生 > >Nginx proxy buffer相關的設置和解釋

Nginx proxy buffer相關的設置和解釋

設置 都是 緩沖 單獨 很大的 服務 接收 同時 客戶端

proxy_buffer_size 4k;

proxy_buffering on;
proxy_buffers 4 4k;
proxy_busy_buffers_size 8k;
proxy_max_temp_file_size 1024m;

首先,這些參數都是針對每一個http request ,不是全局的。

proxy_buffering 開啟的時候,proxy_buffers 和proxy_busy_buffers_size 才會起作用,無論proxy_buffering 是否開啟,proxy_buffer_size 都起作用。

proxy_buffer_size 用來接受後端服務器 response 的第一部分,小的response header 通常位於這部分響應內容裏邊。默認proxy_buffer_size 被設置成 proxy_buffers 裏一個buffer 的大小,當然可以設置更小些

如果 proxy_buffers 關閉,Nginx不會嘗試獲取到後端服務器所有響應數據之後才返回給客戶端,Nginx 會盡快把數據傳給客戶端,在數據傳完之前,Nginx 接收到的最大緩存大小不能超過 proxy_buffer_size 。

如果 proxy_buffers 打開,Nginx將會盡可能的讀取後端服務器的數據到buffer,直到proxy_buffers設置的所有buffer們被寫滿或者數據被讀取完(EOF),此時Nginx開始向客戶端傳輸數據,會同時傳輸這一整串buffer們。如果數據很大的話,Nginx會接收並把他們寫入到temp_file裏去,大小由proxy_max_temp_file_size 控制

proxy_buffers的緩沖區大小一般會設置的比較大,以應付大網頁。而proxy_buffer_size只是響應頭的緩沖區,沒有必要也跟著

擴展到那麽大。所以proxy_buffer_size最好單獨設置,一般設置個4k就夠了

Nginx proxy buffer相關的設置和解釋