时间:2021-07-01 10:21:17 帮助过:34人阅读
分享几个php代码,用来获取当前系统中cpu的使用情况,有需要的朋友作个参考吧。
在php中,可以使用getrusage()获取CPU的使用情况,该方法仅适用于linux系统。 例子: 输出 Array ( [ru_oublock] => 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万,并把它添加到秒的值后,可以得到有小数部分的秒数。 例子: 输出 User time: 0.011552 System time: 0 */ sleep是不占用系统时间的,例子: 输出 User time: 1.424592 System time: 0.004204 */ 以上代码的运行,大约消耗了14秒的CPU时间,几乎所有的都是用户的时间,因为没有系统调用。 系统时间是CPU花费在系统调用上的上执行内核指令的时间。 例子:
|