Php
在 Nginx 配置中為 fastcgi_buffers 設置值的任何指南?
我剛剛將我們的部落格網路移至由 WPMU 提供支持的 ngnix(來自 apache)。一切執行順利,一切正常。
在我尋求將伺服器優化到最高級別的過程中 - 我在 nginx 論壇http://forum.nginx.org/read.php?2,2649上遇到了這個執行緒
我真的很想知道:回答原始問題…
例如,為了防止在提供 6144 KB 文件時出現警告,這三種方法中哪一種會產生最佳性能?
- 大量小緩衝區:fastcgi_buffers 768 8k
- 少量大緩衝區:fastcgi_buffers 8 768k
- 緩衝區和大小之間的接近平衡:fastcgi_buffers 64 96k
還有一件事:在我的 ngnix.config 中 - 我的設置是:
fastcgi_buffers 64 4k;
即 256K 緩衝區大小(我在 32 位平台上)。這是否意味著如果我的 PHP 腳本生成的響應大於 256K,nginx 會拋出一些錯誤?
我知道 ngnix 論壇似乎是問這個問題的好地方,但由於沒有 ngnix 論壇比 serverfault 更活躍,我在這裡發布這個問題。
我希望我能從這裡的專家那裡得到一些意見/指導。
謝謝,
-拉胡爾
不,這意味著如果您的腳本經常生成少於 256K 的響應 - 緩衝區通常是半空的,而您只是浪費記憶體 :)
Beffer 的工作方式如下:nginx
min(buffer_size,response_size)
從 FCGI 腳本讀取字節,將其發送到客戶端並清空緩衝區的內容。如果有更多響應數據 - 它會再次讀取並發送。如果您的站點經常提供由腳本生成的小型頁面,則最佳值比典型腳本響應大小的大小略大:標題 + 內容。