接続中のプロセスが終了するのを待ってApacheを停止する

HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)Apache, Linuxtips, Webサーバー管理, サーバー管理 > 接続中のプロセスが終了するのを待ってApacheを停止する

Linuxサーバー管理者の技術を2日で学べる「初心者向けリナックスセミナー」
30日掛かって覚えるプロの技術を、たった2日間で学習できます。
リナックスマスター2日間集中セミナー【CentOS7版】
 (今すぐ↑をクリックしてください。)

Apacheの停止には、/etc/init.d/httpd stopを使用します。
しかし、stopを実行すると接続中のhttpdプロセスは強制的に終了してしまいます。
つまり、接続してきていたクライアントとの通信が強制的に切断してしまうのです。

そこで、接続中のプロセスが終了するまで待って、
停止する機能がApacheには実装されています。

クライアントとの通信が終了するまで待って再起動するには、
下記のように「graceful-stop」を指定します。
graceful-stopは、/etc/init.d/httpdスクリプトでは実行できず、
スクリプトの元となるapachectlファイルを実行する必要があります。

# /usr/local/apache2/bin/apachectl graceful-stop

graceful-stopを実行すると、利用されていないListen状態のプロセスが終了し、
使用中のプロセスは停止しない状態になります。

すべてのクライアントとの通信が終了するまで停止できませんので、
通信状況によっては、かなり待たなければならない場合があります。
しかし、通信接続保持を優先させる場合には効果的な機能となります。




■CentOS7.1サーバー構築マニュアルを無料プレゼント
 「CentOS7.1」のサーバー構築手順、「VMware Player」の
 ダウンロードとインストール手順をまとめたマニュアルを
 無料でプレゼントしています。


 詳しくは↓のページで説明していますので、今すぐクリックしてダウンロードしてください。
 無料マニュアルをダウンロードする  無料マニュアルをダウンロードする