欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php获取CPU使用情况的代码

程序员文章站 2022-05-17 21:01:48
...
分享几个php代码,用来获取当前系统中cpu的使用情况,有需要的朋友作个参考吧。

在php中,可以使用getrusage()获取CPU的使用情况,该方法仅适用于linux系统。 例子:

 0 
[ru_inblock] => 0 
[ru_msgsnd] => 2 
[ru_msgrcv] => 3 
[ru_maxrss] => 12692 
[ru_ixrss] => 764 
[ru_idrss] => 3864 
[ru_minflt] => 94 
[ru_majflt] => 0 
[ru_nsignals] => 1 
[ru_nvcsw] => 67 
[ru_nivcsw] => 4 
[ru_nswap] => 0 
[ru_utime.tv_usec] => 0 
[ru_utime.tv_sec] => 0 
[ru_stime.tv_usec] => 6269 
[ru_stime.tv_sec] => 0 
) 
*/

解释: ru_oublock: 块输出操作 ru_inblock: 块输入操作 ru_msgsnd: 发送的message ru_msgrcv: 收到的message ru_maxrss: 最大驻留集大小 ru_ixrss: 全部共享内存大小 ru_idrss:全部非共享内存大小 ru_minflt: 页回收 ru_majflt: 页失效 ru_nsignals: 收到的信号 ru_nvcsw: 主动上下文切换 ru_nivcsw: 被动上下文切换 ru_nswap: 交换区 ru_utime.tv_usec: 用户态时间 (microseconds) ru_utime.tv_sec: 用户态时间(seconds) ru_stime.tv_usec: 系统内核时间 (microseconds) ru_stime.tv_sec: 系统内核时间?(seconds) 有时需要查看脚本消耗了多少CPU,需要看看“用户态的时间”和“系统内核时间”的值。 秒和微秒部分是分别提供的,可以把微秒值除以100万,并把它添加到秒的值后,可以得到有小数部分的秒数。 例子:

sleep是不占用系统时间的,例子:

以上代码的运行,大约消耗了14秒的CPU时间,几乎所有的都是用户的时间,因为没有系统调用。 系统时间是CPU花费在系统调用上的上执行内核指令的时间。 例子:

以上示例,展示了更高级别的cpu消耗。 您可能感兴趣的文章: php的file_get_contents导致cpu飙升问题的解决方法 php获取CPU使用情况的代码 php中使用proc/loadavg监控CPU的平均负载 php记录服务器负载、内存、cpu状态的代码 php页面缓存的例子(减经cpu与mysql负担) php获取cpu与内存使用情况的代码一例 php获取linux服务器CPU、内存、硬盘使用率的实现代码 php获取计算机唯一标识信息(cpu,网卡,MAC地址)的代码 PHP-CGI 进程 CPU 100% 与 file_get_contents 函数的关系 php程序随机记录mysql rand()造成CPU 100%的解决方法