PHP-FPM を使用して、fastcgi を介して動的コンテンツを nginx に提供しています。PHP-FPM プロセスが非常に多くのメモリを使用していることを除いて、すべて正常に動作しています。new relic プロセス モニターによると、PHP-FPM では 6 つのプロセスが実行されており、それらを合わせて 220 MB 以上を使用しています。私には普通に見えませんか?何が問題なのですか?
質問する
1010 次
1 に答える
1
確認すべきいくつかの点は、開発環境でデバッグするためのヒントです。
- PHP の memory_limit を 35M に設定して、PHP エラーが発生する場所を確認できますか?
- 実行中の大規模なデータベース クエリはありますか?
- PHP で APC を使用していますか?共有メモリのサイズ (shm) はどのくらいですか?
- xDebug (http://xdebug.org/) に精通している場合。xDebug プロファイラー (http://xdebug.org/docs/profiler) を使用して、何がメモリを使用しているかを確認できます。それがあなたの最善の策です。
- PHP-FPM では、一定量のリクエスト後に子プロセスを再起動する最大リクエスト パラメータ (pm.max_requests) を設定できます。低く設定すると、パフォーマンスが低下し、負荷がかかった状態で奇妙な動作になる可能性があることに注意してください。
1プロセスあたり37Mは正直高いですが、Magentoなどのアプリケーションはそれに近いものを見てきましたので、問題ないかもしれません。それが役立つことを願っています。
于 2012-11-14T18:38:09.137 に答える