Apache2構成ファイルを問題なく「リロード」できますか?


16

sudo /etc/init.d/apache2 reload

apacheがホストするWebサーバーの操作を中断しますか?

回答:


19

リロードは「グレースフルリスタート」を行います。

Apacheドキュメントの停止と再起動から

USR1またはグレースフルシグナルにより、親プロセスは、現在の要求の後に終了するように(または、何も提供していない場合はすぐに終了するように)子に通知します。親は構成ファイルを再度読み取り、ログファイルを再度開きます。各子が終了すると、親は新しい世代の構成の子に置き換えられ、新しい要求の処理がすぐに開始されます。

理論的には、操作が中断されることはありませんが、サーバープロセスの再起動の波があり、いくらか(通常は十分に些細な)オーバーヘッドがあります。

実際には、preforkまたはworkerを使用しているかどうか、指定した子の数、workerの場合は子ごとの最大スレッド数など、さらに多くの変数が関係しています。


1
OK。したがって、より正確には、私の顧客がphpベースのeショップで注文を行っている場合です。再起動せずにApacheをリロードすると、彼は問題を抱えていますか?おかげで
動脈瘤

ここでも理論的には、限り、顧客の注文は1回のPHPの呼び出しで処理されるように、そして限り、リロードが「古い世代」のサーバーが正しく機能するために重要ではないとして、その後、すべてが正常とも通過します。しかし、実際にテストするのは簡単です。
harrymc

initスクリプトはパッケージャによって追加されることに注意してください。redhat / oracle linux apache v2.2のものは、サービスhttpd reloadを呼び出すときに-HUPシグナルを送信します。グレースフルリスタートサービスの場合、/ usr / sbin / apachectl gracefulを呼び出すhttpdグレースフルを呼び出す必要があります。
デビッドバラジック14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.