ホームページ  >  記事  >  バックエンド開発  >  PHPプロセスがメモリを解放しない

PHPプロセスがメモリを解放しない

(*-*)浩
(*-*)浩オリジナル
2019-09-25 10:31:524309ブラウズ

php-fpm プロセスがメモリを解放しない問題を解決する

PHPプロセスがメモリを解放しない

##メモリを減らすことで、 php- fpm プロセスの総数を利用して php-fpm のメモリ使用量を削減できますが、実際に使用していると、php-fpm プロセスが解放されずに長期間メモリを占有してしまう問題が依然として存在することが判明しました。解決策は、pm.max_requests の数を減らすことです。 (推奨学習: PHP プログラミングの入門から熟練度まで )

リクエストの最大数 max_requests、つまり、PHP-CGI プロセスによって処理されるリクエストの数が max_requests まで累積した場合、自動的に再起動します このプロセスにより、メモリを解放するという目的が達成されます。例として、1GB メモリの VPS ホスト設定を取り上げます (設定した値が空きメモリに達しない場合は、値を下げ続けることができます):

pm.max_requests = 500

php-fpm プロセスが、によって設定された値に達したときpm.max_requests を指定すると、プロセスが再起動され、メモリが解放されます。下の図はテスト後の結果ですが、php-fpmプロセスが強制終了され、メモリが解放されたことが分かります。

PHPプロセスがメモリを解放しない

大規模なメモリ、同時実行性、および可用性の要件については、最大の pm.max_children を使用して静的管理モードを使用することをお勧めします。メモリの少ないサーバーの場合は、ダイナミック モードまたはオンデマンド モードを使用し、pm.start_servers および pm.max_spare_servers プロセスの数を減らすことをお勧めします。

以上がPHPプロセスがメモリを解放しないの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。