php擷取CPU使用方式的代碼

來源:互聯網
上載者:User
分享幾個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%的解決方案

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.