Apache2プロセスの数を減らす

Apache2プロセスの数を減らす

7個見つかりました(x7)apache2プロセス:

  PID TTY      STAT   TIME COMMAND

  770 ?        Ss     0:00 /usr/sbin/apache2 -k start
  773 ?        S      0:00 /usr/sbin/apache2 -k start
  774 ?        S      0:00 /usr/sbin/apache2 -k start
  775 ?        S      0:00 /usr/sbin/apache2 -k start
  776 ?        S      0:00 /usr/sbin/apache2 -k start
  777 ?        S      0:00 /usr/sbin/apache2 -k start
 1223 ?        S      0:00 /usr/sbin/apache2 -k start

apache2.conf確認しましたサーバーの起動そして最大顧客数しかし、そこにはないので、次のファイルを編集して3の値をサーバーの起動パラメータで、値5を保持します。最大顧客数パラメータは次のとおりです。

$ sudo nano /etc/apache2/apache2.conf

...
StartServers 3
MaxClients 5
...

しかし、まだ7つのプロセスがあります。これを3つのプロセスに減らす方法についてのアイデアはありますか?

答え1

Apache 2.4ワーカープロセスは高度に設定可能です。 Apache Multiprocessingモジュールの基本概念を読む必要があります。

https://httpd.apache.org/docs/2.4/en/mpm.html

パラメーターを調整するには、各パラメーターについて詳しく説明されている資料をお読みください。

https://httpd.apache.org/docs/2.4/de/mod/worker.html

使用できるプロセスの総数を制限するにはサーバー制限ディレクティブ:

/etc/apache2/mods-enabled/mpm_.conf:

ServerLimit 3
StartServers 3
MinSpareServers 3
MaxConnectionsPerChild 250

少数の作業者を強制すると、予期しない動作が発生したり、アプリケーションが遅くなる可能性があることに注意してください。

たとえば、この設定でPHP Webfrontendを実行すると、Apacheは一度に3つの要求のみを処理できます。したがって、何を達成したいのか、プロセス数を制限することが本当に必要かを考える必要があります。

もちろん、常に親プロセスがあります。Nワーカーサブプロセス:

root     15873  0.0  0.1  73636  2728 ?        Ss   17:25   0:00 /usr/sbin/apache2 -k start
www-data 15876  0.0  0.1 418104  2476 ?        Sl   17:25   0:00  \_ /usr/sbin/apache2 -k start
www-data 15877  0.0  0.1 418104  2480 ?        Sl   17:25   0:00  \_ /usr/sbin/apache2 -k start
www-data 15878  0.0  0.1 418104  2484 ?        Sl   17:25   0:00  \_ /usr/sbin/apache2 -k start

関連情報