web-dev-qa-db-ja.com

Nginx構成でfastcgi_buffersの値を設定するためのガイドはありますか?

ブログネットワークを、WPMUを搭載したngnix(Apacheから)に移動しました。すべてがスムーズかつ正常に実行されています。

サーバーを最大レベルに最適化するための私の探求中に-私はnginxフォーラムでこのスレッドに出くわしました http://forum.nginx.org/read.php?2,2649

本当に知りたい:元の質問への回答...

たとえば、6144キロバイトのファイルを提供するときの警告を防ぐために、3つの方法のどれが最高のパフォーマンスをもたらすでしょうか?

  1. 多数の小さなバッファー:fastcgi_buffers 768 8k
  2. 少数の大きなバッファー:fastcgi_buffers 8 768k
  3. バッファとサイズのほぼバランス:fastcgi_buffers 64 96k

そしてもう1つ:私のngnix.configで-私の設定は:

fastcgi_buffers 64 4k;

つまり、256Kのバッファサイズ(私は32ビットプラットフォームを使用しています)。これは、私のPHPスクリプトが256Kを超える応答を生成した場合、nginxがエラーをスローすることを意味しますか?

Ngnixフォーラムはこれを尋ねるのに適した場所のようですが、serverfaultほどアクティブなngnixフォーラムはないため、この質問をここに投稿します。

ここで専門家からいくつかのインプット/ガイダンスを得ることを願っています。

ありがとう、

-ラフル

4
rahul286

いいえ、それは、スクリプトが256K未満の応答を生成することが多い場合、バッファが半分空になることが多く、メモリを浪費することを意味します:)

Befferは次のように機能します。nginxはFCGIスクリプトからmin(buffer_size,response_size)バイトを読み取り、それをクライアントに送信して、バッファーの内容を空にします。より多くの応答データがある場合、それは再度読み取りと送信を行います。

サイトでスクリプトで生成された小さなページが頻繁に提供される場合、最適な値は、一般的なスクリプト応答サイズのサイズ(ヘッダー+コンテンツ)よりも少し大きくなります。

5
kolypto