Apacheはフォークできません。メモリを割り当てることができません。

Apacheはフォークできません。メモリを割り当てることができません。

私はFedoraで.serverをapache使用してmod_perl電子メールを頻繁に送信するプロセスを分岐しています。その後、分岐が終了します。

突然、次のような結果が出ましたCannot fork: Cannot allocate memory。使用可能なメモリーが十分であり(詳しくは見ていませんが、使用済みメモリーよりも使用可能なメモリーが多い)、apache実行中のプロセスがあまりにも多くありません。 - 10? , CPU 使用量が 0 に近いため低サーバーhttpdを再起動すると、問題は正常に解決されました。

何がこのようなことを起こすことができますか?システムにあまりにも多くのプロセスが割り当てられ、負荷が減少した後に回復する方法がない問題がある状態に入る可能性はありますか?

残念ながら、慌てて診断を実行する代わりにサイトを起動しようとしたため、情報はあまりありません。 :-) 私の質問は非常に一般的なものです。あまりにも多くのプロセスが割り当てられたときにこれらの動作を引き起こす可能性がある明確ではありませんか? Apache内でフォークすることに関連する特別なものはありますか?など

ありがとうございます!

ベストアンサー1

リソース制限に達したようです。 pam_limits.soとを確認してください/etc/security/limits.conf。これにより、管理者は、1人のユーザーがすべてのシステムリソースを排他できないように、ユーザーが使用できるリソースに明示的な制限を設定できます。 Apacheが指定された制限に達すると、他のユーザーが利用できるリソースが多い場合でも、上記のようにエラーが返されます。ほとんどのシェルにはlimitorコマンドもありますが、ulimitそれは問題ではないと思います。

おすすめ記事