如何在没有exec的情况下获得CPU使用率和RAM使用率?
2022-08-30 14:12:48
VBulletin 如何在不使用 的情况下获取系统信息?在没有exec的情况下,我是否可以获得有关服务器的任何其他信息?我感兴趣的是:exec
- 使用的带宽
- 系统类型
- CPU 速度/使用率/计数
- 内存使用情况
VBulletin 如何在不使用 的情况下获取系统信息?在没有exec的情况下,我是否可以获得有关服务器的任何其他信息?我感兴趣的是:exec
使用 PHPSysInfo 库
phpSysInfo 是一个开源 PHP 脚本,显示有关正在访问的主机的信息。它将显示如下内容:
它直接解析解析,不使用 。/proc
exec
另一种方法是使用Linfo。这是一个非常快速的跨平台php脚本,可以非常详细地描述主机服务器,提供诸如RAM使用情况,磁盘空间,raid阵列,硬件,网卡,内核,操作系统,samba / cups / truecrypt状态,temps,磁盘等信息。
这就是我在Linux服务器上使用的东西。它仍然使用 ,但其他问题在这里指出是重复的,并且没有[好的]建议。它应该在每个发行版上工作,但如果不能,请尝试弄乱偏移量。exec
$get_cores + 1
CPU 占所用内核的百分比(平均 5 分钟):
$exec_loads = sys_getloadavg();
$exec_cores = trim(shell_exec("grep -P '^processor' /proc/cpuinfo|wc -l"));
$cpu = round($exec_loads[1]/($exec_cores + 1)*100, 0) . '%';
RAM 占已用总量的百分比(实时):
$exec_free = explode("\n", trim(shell_exec('free')));
$get_mem = preg_split("/[\s]+/", $exec_free[1]);
$mem = round($get_mem[2]/$get_mem[1]*100, 0) . '%';
以 GB 为单位的内存(实时):
$exec_free = explode("\n", trim(shell_exec('free')));
$get_mem = preg_split("/[\s]+/", $exec_free[1]);
$mem = number_format(round($get_mem[2]/1024/1024, 2), 2) . '/' . number_format(round($get_mem[1]/1024/1024, 2), 2);
如果您需要计算其他方面,则数组中的内容如下:$get_mem
[0]=>row_title [1]=>mem_total [2]=>mem_used [3]=>mem_free [4]=>mem_shared [5]=>mem_buffers [6]=>mem_cached
奖金,这是如何获得正常运行时间:
$exec_uptime = preg_split("/[\s]+/", trim(shell_exec('uptime')));
$uptime = $exec_uptime[2] . ' Days';