Apacheの起動状況、プロセス数を確認するコマンド

Apacheロゴ

Webシステムで重要な役割を果たすApache HTTP Serverの起動状況を確認することは、WordPressでブログを運営するブロガーや、システム構築を仕事とするSEにとって重要なことです。この記事では、Apacheの起動状況、プロセスの起動状況を確認するコマンドを解説します。

Apache自身が起動中であるか確認

Apacheが起動中か停止中かステータルを確認するコマンドです。

# /etc/init.d/httpd status

コマンドの実行例

  [root@]# /etc/init.d/httpd status
  httpd (pid 12429) を実行中…






Apacheのプロセス起動状況を確認

Apacheは、あなたのブログ、またはシステムの画面を観にきているユーザからの閲覧(リクエスト)に対して1つのプロセスが起動します。現在、どの程度のHTTPプロセス(ユーザの閲覧に該当)が動作しているか確認するのが、psコマンドです。
例えば、閲覧数が1つのはずなのに、プロセス数が5つであった場合、過去に閲覧したときのプロセスが終了せず残っているといった問題点を確認するのに使用します。

# ps ax | grep httpd

「ps ax」は、今あなたのシステムで動作している全プロセスを表示するコマンドです。
Linuxコマンド(UNIXコマンド)の「ps」(ピーエス)で、動作中のプロセスを一覧で表示するものです。
「ps ax」の「ax」はpsコマンドの引数(ひきすう)と呼ばれるもので、1文字ずつに意味があります。

  a :全プロセスを表示対象とする。 
  x :バックグラウンドで起動された処理も表示対象とする。

「grep httpd」(グレップ エイチティーティーディー)の、「grep」(グレップ)コマンドは、「httpdという文字列を抽出する」コマンドです。

「 | 」は「パイプ」と呼ばれ、キーボードは[Shift]キーを押しながら「 ¥ 」キーを押すと入力できます。この「 | 」は、「コマンドの結果を次のコマンドへ引き渡す」という役割を果たします。
従って、上記の例では、「ps ax」コマンドで全プロセスを表示するはずが表示せず、「 | 」によってそのまま次のコマンドである「grep httpd」コマンドへ「全プロセスを表示」の結果を引き渡し、「grep httpd」コマンドによって「全プロセスを表示」の中から「httpd」文字列の行だけ抜き出した結果を最終的に表示します。

コマンドの実行例
下記の通り、httpdの文字列を含む行だけ抽出されて表示しています。

  [root@]# ps ax | grep httpd
  23549 ? Ss 0:00 /usr/sbin/httpd
  23554 ? S 0:04 /usr/sbin/httpd
  23555 ? S 0:11 /usr/sbin/httpd
  23556 ? S 0:08 /usr/sbin/httpd
  23557 ? S 0:11 /usr/sbin/httpd
  23558 ? S 0:08 /usr/sbin/httpd
  23559 ? S 0:04 /usr/sbin/httpd






Apacheのプロセス起動数を確認

Apacheのプロセス数が、現在、いくつ起動しているかカウントするコマンドです。

# ps aux | grep httpd | grep -v “\(root\|grep\)” | wc -l

なお、Apacheのプロセス数は常に変化するので、一定間隔、例えば30秒ごとにコマンドを入力すると、プロセス数に変化が表れる可能性があります。

コマンドの実行例
「ps ax | grep httpd」コマンドだと、いちいちプロセスの数を数える必要がありますが、このコマンドを利用すると、httpd(Apacheのプロセス)数をカウントした結果のみ表示します。

  [root@]# ps aux | grep httpd | grep -v “\(root\|grep\)” | wc -l
  35
  [root@]# ps aux | grep httpd | grep -v “\(root\|grep\)” | wc -l
  39
  [root@]# ps aux | grep httpd | grep -v “\(root\|grep\)” | wc -l
  42

スポンサーリンク

シェアする

フォローする