ホームページ >バックエンド開発 >PHPチュートリアル >phpはLinuxマシンのパフォーマンスを取得します

phpはLinuxマシンのパフォーマンスを取得します

WBOY
WBOYオリジナル
2016-06-23 13:47:10848ブラウズ

<?php$str = shell_exec('more /proc/stat');$pattern = "/(cpu[0-9]?)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)/";preg_match_all($pattern, $str, $out);echo "共有".count($out[1])."个CPU,每个CPU利用率如下:\n";for($n=0;$n<count($out[1]);$n++){echo $out[1][$n]."=".(100*($out[1][$n]+$out[2][$n]+$out[3][$n])/($out[4][$n]+$out[5][$n]+$out[6][$n]+$out[7][$n]))."%\n";}$str = shell_exec('more /proc/meminfo');$pattern = "/(.+):\s*([0-9]+)/";preg_match_all($pattern, $str, $out);echo "物理内存总量:".$out[2][0]."\n";echo "已使用的内存:".$out[2][1]."\n";echo "-----------------------------------------\n";echo "内存使用率:".(100*($out[2][0]-$out[2][1])/$out[2][0])."%\n";$str = shell_exec('more /proc/net/dev');$pattern = "/(eth[0-9]+):\s*([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)/";preg_match_all($pattern, $str, $out);echo "共有".count($out[1])."个网络接口,每个网络接口利用率如下:\n";for($n=0;$n<count($out[1]);$n++){echo $out[1][$n].":收到 ".$out[3][$n]." 个数据包,发送 ".$out[11][$n]." 个数据包\n";}function get_cpu_usg(){     $str = shell_exec('more /proc/stat');     $pattern = "/(cpu[0-9]?)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)[\s]+([0-9]+)/";     preg_match_all($pattern, $str, $out);     $total=0;     for($n=0;$n<count($out[1]);$n++)     {                $usg=(100*($out[1][$n]+$out[2][$n]+$out[3][$n])/($out[4][$n]+$out[5][$n]+$out[6][$n]+$out[7][$n]));               $total+=$usg;      }     return $total;}function get_mem_usg(){     $str = shell_exec('more /proc/meminfo');     $pattern = "/(.+):\s*([0-9]+)/";     preg_match_all($pattern, $str, $out);     $memusg= (100*($out[2][0]-$out[2][1])/$out[2][0]) ;     return $memusg;}

出力形式は次のとおりです

CPU は合計 11 個あり、各 CPU の使用率は次のとおりです:
cpu=0.46448573378952%
cpu0=0.31392223749401%
cpu1=0.5349746952947 3%
cpu2=0 .48665815912626 %
cpu3=0.44933676279833%
cpu4=0.39351618273537%
cpu5=0.25942202031553%
cpu6=0.72395782907821%
cpu7=0.1514439064 9732%
cpu8=0.10644291691583%
cpu9=0.122048049362 89%
合計物理メモリ: 32776832
使用メモリ: 240852
- --------- ----------------------------------
メモリ使用量: 99.265176085352%
4 つのネットワーク インターフェイスがあり、各ネットワーク インターフェイスが使用するレートは次のとおりです:
eth0: 受信パケット 307077767、送信パケット 303024103
eth1: 受信パケット 240252949、送信パケット 119448221
eth2: 受信パケット 0、送信パケット 0
eth3 : 0データ パケット受信数、送信データ パケット数 0

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:js phpの配列比較次の記事:js phpの配列比較