4
ApacheとPHPでメモリリークを調査する方法は?
財務モデリングを実行する重いDrupal Webサイトを運営しています。私たちは、Apacheプロセスの数が安定したままで、Apacheが使用するメモリが時間外に増加するという事実を考えると、ある種のメモリリークに直面しているようです。 /etc/init.d/httpd reloadメモリ使用量が低下するため、apache / PHPからメモリの問題が発生していることがわかります(上記のスクリーンショットおよびCLI出力を参照)。 httpdのリロード前 $無料 キャッシュされた使用済み共有バッファの合計 Mem:49447692 45926468 3521224 0 191100 22609728 -/ +バッファ/キャッシュ:23125640 26322052 スワップ:2097144 536552 1560592 httpdのリロード後 $無料 キャッシュされた使用済み共有バッファの合計 Mem:49447692 28905752 20541940 0 191360 22598428 -/ +バッファ/キャッシュ:6115964 43331728 スワップ:2097144 536552 1560592 各Apacheスレッドにはmemory_limit、512MBのPHPが割り当てられます。これは、高いメモリ使用量が要求の少ないボリュームを悪化させることを説明し、max_execution_time120秒のスレッドは実行に時間がかかるスレッドを終了するため、メモリ使用量の継続的な増加を防ぐ必要があります見て。 Q:このメモリリークの原因を調査するにはどうすればよいですか? 理想的には、開発チームを煩わせることなくシステムで実行できるトラブルシューティング手順を探しています。 追加情報: OS: RHEL 5.6 PHP: 5.3 Drupal: 6.x MySQL: 5.6 参考までに、私たちは個別に調査しているスワッピングの問題を認識しており、スワッピングが発生する前に観察したメモリリークとは何の関係もありません。