サーバーに(それは賢明に書かれている場合)一日あたりのアプリケーションに> 500 000要求を処理するための強力な十分です。
問題は、PHP-FPMがより多くのリクエストを処理するために多くの子プロセスを持つことができないためです。
Apacheでは、自動的に追加のApacheプロセスから開始されました。
しかし、Nginx + PHP-FPMでは、このような状況をどのように処理するかを自由に指定できます。
ちょうどあなたのFPMプールconfのを変更:(またはものは何でもあなたが使用して)
を、それがこのコンテンツを持っていることを確認してください。その後、
pm = static
pm.max_children = 4096
pm.process_idle_timeout = 10s
pm.max_requests = 32
と
もnginx.conf
を編集し、作るPHPのFPMを再起動しますこのフィールドが上部に表示されていることを確認してください:
user http;
worker_processes auto;
events {
worker_connections 4096;
multi_accept on;
use epoll;
}
p.s. listenの属性をip:port
に変更しないでください - ソケットは速くなります。ip:port
ではipとportでネットワーク接続を作成しますが、ソケットバージョンでは.sock "file"を開くだけです。
p.s. fastcgi_buffers
などの指示を変更しないでください。悪いゲートウェイの問題は、php-fpmプロセスが少ないため修正されません。
私のサーバーでは、それはデフォルトです:
fastcgi_buffers 32 1024k;
fastcgi_buffer_size 1024k;
P.S.あなたのディスク・ドライブをしないようにするために、不要なログ(nginx.conf)を無効によりIOの負荷を持っている:
access_log off;
error_log /var/log/nginx/error.log crit;
あなたは、この偉大なため
感謝を使用
newrelic
を監視して、サーバのネットワーク、CPU、MEMの活動を監視する必要がある場合答え: –どのように役立った!幸いに助けてください( – num8er
実際にはより多くの同時リクエストを許可するのに役立ちます...そして私はlaravelからphalconへプロジェクトの特定の部分を移動しました..そして今それは素晴らしいです –