我目前正在为显示当前CPU使用率的网站设计图形系统,您可以在此处查看我正在进行的工作 - http://nereus.rikkuness.net/admin/cpu2.php
它正好像我现在所想的那样工作,但问题是我正在轮询CPU使用率的方式目前
sar 1 | sed -n '5p' | awk '{ print $8; }'
哪种方法可以正常工作,但需要大约一秒左右才能回复CPU使用率,这会使图表不会像我期望的那样在浏览器中更新。
对命令的任何帮助都会给予我相同的信息,但速度要快得多。
非常感谢,
史蒂夫
答案 0 :(得分:1)
您只需使用sar 0
即可。这将立即返回结果,而不是像使用sar 1
那样等待1秒的间隔。\
请注意,这只会返回单个时间点值,因此您可能需要使用javascript来跟踪以前的值(即向数组添加新值并关闭旧值)。
答案 1 :(得分:1)
如何使用PHP的内部sys_getloadavg
功能? http://php.net/manual/en/function.sys-getloadavg.php
另外,为了获得当前负载,以下几行可能就足够了:
<?php
$output = shell_exec('cat /proc/loadavg');
$loadavg = substr($output,0,strpos($output," "));
?>
答案 2 :(得分:0)
如果您可以在html5上转发,则可以使用web sockets完成任务。
WebSocket是一种提供全双工通信的Web技术 通过单个TCP连接的通道。 WebSocket API正在发布 由W3C标准化,并且WebSocket协议已经完成 由IETF标准化为RFC 6455。
由于您使用的是Linux,我认为这不是问题,因为Firefox和Chrome都支持它们(http://caniuse.com/#feat=websockets)。