PHPでは、どのように現在入手可能なapacheの子供の数を得ることができます
(status = SERVER_READY
、Apacheのスコアボードで)?php内の無料のapacheの子供の数を取得する方法
私は実際にPHPでこれを行うための簡単な方法が欲しいと思っています。
PHPでは、どのように現在入手可能なapacheの子供の数を得ることができます
(status = SERVER_READY
、Apacheのスコアボードで)?php内の無料のapacheの子供の数を取得する方法
私は実際にPHPでこれを行うための簡単な方法が欲しいと思っています。
ps aux | grep httpd
またはのシェルコマンドを実行し、出力の行数をカウントできます。
exec('ps aux | grep apache', $output);
$processes = count($output);
私はそれが接続を受け入れる準備ができていることを示していますが、準備のプロセスの数を取得することに対してフィルタリングすることができ、ステータス欄のどの状態かわかりません。 ?あなたは、Apacheサーバのステータスページへのアクセス権を持っている場合
、オートフラグを使用してみてください:
http://yourserver/server-status?auto
出力はステータスページの機械読み取り可能なバージョンです。 I あなたは "IdleWorkers"を探しています。ここでは簡単なPHP5コードを紹介します。実際には、サーバーがオフラインの場合に、cURLまたはソケット接続を使用してタイムアウトを開始することをお勧めします。
<?php
$status = file('http://yourserver/server-status?auto');
foreach ($status as $line) {
if (substr($line, 0, 10) == 'IdleWorkers') {
$idle_workers = trim(substr($line, 12));
print $idle_workers;
break;
}
}
?>