分享几个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: 发送的messageru_msgrcv: 收到的messageru_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%的解决方法