まずはphp-fpmとは何かを理解しましょう
PHP-FPM は、PHP 専用の PHP FastCGI マネージャーです。
PHP-FPM は実際には PHP ソース コードのパッチであり、FastCGI プロセス管理を PHP パッケージに統合するように設計されています。 PHP ソース コードにパッチを適用する必要があり、PHP をコンパイルしてインストールした後に使用できるようになります。 最新のPHP 5.3.2のソースツリーにPHP-FPMを直接統合したブランチがダウンロードできるようになりました。次のバージョンではPHPのメインブランチに統合される予定だそうです。 Spawn-FCGI と比較すると、PHP-FPM は CPU とメモリの制御が優れており、前者はクラッシュしやすく、crontab で監視する必要がありますが、PHP-FPM にはそのような問題はありません。
PHP5.3.3 には php-fpm が統合されており、サードパーティのパッケージではなくなりました。 PHP-FPM は、メモリとプロセスを効果的に制御し、PHP 設定をスムーズにリロードできる、より優れた PHP プロセス管理方法を提供します。そのため、spawn-fcgi よりも多くの利点があるため、PHP に正式に組み込まれています。 PHP-FPM を有効にするには、./configure で –enable-fpm パラメーターを渡します。 PHP-FPM を使用して PHP-CGI の FastCGI プロセスを制御します
(www.111cn.net)
マスタープロセスは以下の信号を理解できます
INT、TERM 即時終了
QUIT スムーズに終了
USR1 ログファイルを再度開きます
USR2 スムーズにすべてのワーカープロセスをリロードし、設定モジュールとバイナリモジュールをリロードします
例:
php-fpm は終了しました:
コードは次のとおりです コードをコピーします
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`
php-fpm 再起動:
コードは次のとおりです コードをコピーします
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
php-fpmプロセスの数を表示します:
コードは次のとおりです コードをコピーします
ps grep -c php-fpm
php-fmpを再起動する(方法2)
最初に実行
コードは次のとおりです コードをコピーします
killall php-fpm
再度実行(usr/local/phpはphpのインストールディレクトリ)
次のようにコードをコピーします
/usr/local/php/sbin/php-fpm &
from:http://www.111cn.net/phper/php-gj/52906.htm
愚かな方法は、バッチ プロセスを作成し、そのバッチ プロセスに上記の起動メソッドを記述し、タスク プランでバッチ プロセスを定期的に開始することです。
taskkill /f /im php-cgi.exe を使用して php-cgi を起動する前に強制終了し、その後 RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9000 -c php\php .ini
#!/bin/bash
if[ (top | grep php |cut -d -f 9) -gt $1 ];then
sudo /data/webserver/php-5.2.17/sbin/php-fpm reload -u ××× -p×××;
fi
追記: $1 を監視したい負荷値に置き換えます。たとえば、fpm の CPU 使用率が 10% を超えないようにする場合は、$1 を 10 に置き換えます。