PHP

php-fpmのチューニング

php-fpmのチューニングを行います。
設定ファイルは
/etc/php-fpm.d/www.conf
最初から詳しめのコメントも入っているし、
公式:https://php.net/manual/ja/install.fpm.configuration.php
でも説明は見れます。
pm
static(プロセス数固定)になっていたが特に固定したくはないのでdynamic(必要に応じてプロセス数が変動)に変更。
pm.max_children
プロセス数。dynamicの場合は最大子プロセス数になる。

pm.max_spare_servers
dynamic指定時のidleプロセス数の最大数。
pm.max_children以下にしないと"main process exited, code=exited, status=78"というエラーが出る。

変更したらphp-fpmを再起動して反映します。
$ service php-fpm restart
でphp-fpmを再起動した後、
apacheなら
$ sudo service httpd restart
Nginxなら
$ sudo nginx -s reload
で再起動して反映します。
まずはピークタイムにメモリの状況を見て変更していきます。
余裕があれば増やして、エラーがでるようなら減らします。
ギリギリにすると偏った時にエラーが出かねないので少し余裕を見て設定しましょう。

-PHP