GNU/Linux >> Linux の 問題 >  >> Linux

最高の PHP-FPM 構成 – 簡単でシンプルな計算

最高の PHP-FPM 構成 – 簡単でシンプルな計算。 PHP-FPM は、PHP の代替となる FastCGI プロセス マネージャーです。 PHP-FPM は、さまざまな PHP バージョンなどを使用するさまざまなユーザー向けにプール設定を簡単に調整することで、高度に構成可能です。

このガイドでは、簡単な計算を使用して、以下にリストされているいくつかのエラーを防ぐための最適な PHP-FPM 構成方法を学習します。

1. server reached pm.max_children setting, consider raising it
2. seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers)

ステップ 1:サーバーの仕様

まず、サーバーの仕様を書き留めます。 CPU コアと RAM サイズ。

たとえば、このガイドでは、2vCPU と 16 GB RAM があると仮定します。

次に、PHP 処理に割り当てることができるメモリの量を決定します。 PHP 処理に割り当てることができる 16 GB の RAM のうち、約 10 GB の RAM を想定できます。

ステップ 2:各 PHP-FPM プロセスが消費する RAM の量

次のコマンドを実行して、実行中の PHP-FPM プロセスで消費される平均メモリを確認できます。

ps -ylC php-fpm7.4 --sort:rss

PHP のバージョンをアプリケーションで使用されているものに置き換えます。

以下のような出力が得られます。

RSS の下の値に注意してください 桁。これは、各 PHP-FPM プロセスで使用されるメモリです。

ここに約 20MB あります PHP-FPM の子プロセスごとに平均して RAM が使用されます。

ステップ 3:PHP-FPM の子の値を計算する

デフォルトでは pm 値は dynamic に設定されます であるため、予備サーバーの最小数と最大数、および子サーバーの最大数を構成する必要があります。

pm を変更します 値を ondemand に 需要に応じて自動的に予備サーバーが作成されます。

pm = ondemand

これで、サーバーの仕様に従ってアプリケーションを実行するために作成できる子プロセスの量を計算できます。

10GB を割り当てようとしているため PHP-FPM 処理用の RAM。前のステップのコマンドを実行すると、平均値 20MB が見つかりました

PHP-FPM で使用できる最大 RAM / 各子が消費する RAM =PHP-FPM の子の最大値

つまり 10000 /20 =500 .サーバーの仕様に応じて、最大 500 個の PHP-FPM の子を使用できます。したがって、PHP-FPM 構成は…

pm.max_children = 500

サーバー上で PHP-FPM をスムーズに実行するには、これら 2 つの値を調整する必要があります。

最大リクエスト数を 500 に設定することもできます pm.max_requests のコメントを外すだけで .これは、サード パーティのライブラリにメモリ リークがある場合に役立ちます。

最終的な構成は次のようになります。

pm = ondemand
pm.max_children = 500
pm.max_requests = 500

情報技術の専門家として働く役割に備える Linux オペレーティング システムで

結論

これで、簡単な計算を使用して、サーバーの仕様に従って PHP-FPM 値を構成する方法を学びました。

御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。


Linux
  1. ブロックされたサイトをバイパスする簡単で簡単な方法?

  2. ログローテーションの設定とトラブルシューティングの例

  3. RAID、LVM、LUKS の最適な順序

  1. Distro-軽量でインストールが簡単ですか?

  2. 方法:DRBDのレプリケーションと構成

  3. auditd 構成の簡単な例

  1. fd –コマンドを見つけるためのシンプルで高速な代替手段

  2. Ansible AWXガイド:基本的な使用法と構成

  3. 最高のオンラインLinuxターミナルとオンラインBashエディター