PHP で CPU 使用率を表示したいと考えています。シェルでcronで値を取得する>ファイルに出力する>PHPで解析するか、phpで直接値を取得する場合は重要ではありません。インターネットで見つけた多くのソリューションを試しましたが、何も役に立ちませんでした。負荷平均を使用すると、0 ~ 100% のグラフィック バーを表示できず、パーセンテージ出力で見つかった関数が悪い値を返すか、最初のコアの値のみを返します。すべてのコアの使用率を取得するとよいでしょう。これに対する解決策はありますか?
編集:
一時的な解決策を作成します。うまく機能しますが、最善の方法ではありません。
1分ごとにcronジョブを実行し、「トップ」からgrep cpu infoのコマンドを実行するphpスクリプトを実行してファイルに保存し、終了スクリプトで3秒待って20回ループします(3秒ごとに更新する方法)phpスクリプト:
<?php
for($i=0; $i<=20; $i++) {
//cpu load
exec("top -b -n 1 | grep 'Cpu(s):' > /some/file.cpu");
//ram usage
exec("top -b -n 1 | grep 'Mem:' > /some/file.ram");
//wait 3sec
sleep(3);
}
?>
そして今、このファイルから情報を解析できます。
新しい質問は、このコマンドを 3 秒ごとに実行するデーモン スクリプトを作成する方法です。PHPスクリプトとcronによる解決策は一時的な解決策であり、最善の方法ではないと思います。デーモンははるかに優れています。