CPU利用率過高的原因
租用的伺服器在使用作業系統的時候,用著用著系統就變慢了,開啟“ 工作管理員 ”一看,才發現CPU使用率達到80%以上。這是怎麼回事情呢?
遇到病毒了嗎?硬體有問題?還是系統設定有問題呢?從硬體,系統程式來介紹CPU資源使用率為什麼會達到那麼高,以幫助大家排除伺服器CPU使用率高的種種疑惑。
一、硬體因素
以下分別從CPU溫度,CPU超執行緒,硬體配置,硬體驅動和待機方面分析。
1、CPU溫度過高
如果CPU風扇散熱不好,會導致CPU溫度太高,使CPU自動降頻,從而使CPU的效能降低。總之高溫時CPU會自動將降低工作效率。
2、超執行緒
超執行緒導致CPU使用率佔用高,這類故障的共同原因就是都使用了具有超執行緒功能的P4 CPU。據一些網友總結超執行緒似乎和天網防火牆有衝突,可以透過解除安裝天網並安裝其它防火牆解決,也可以透過在BIOS中關閉超執行緒功能解決情況3、硬體配置不合理例如記憶體不足,當執行一些大型軟體時,CPU的資源大部分耗在了虛擬記憶體的交換處理上。而電源功率不足,也會使CPU的效能難以發揮。還有,在購買CPU時,選的CPU核心頻率不足是導致CPU的使用率高的最直接原因。
3、不完善的驅動程式
硬體的驅動程式沒有經過認證或者是不合法的認證,會造成CPU資源佔用率高。因大量的測試版的驅動在網上氾濫,造成了難以發現的故障原因。處理方式:尤其是顯示卡驅動特別要注意,建議使用微軟認證的或由官方釋出的驅動,並且嚴格核對型號、版本。
4、待機
經常使用待機功能,也會造成系統自動關閉硬碟DMA模式。這不僅會使系統效能大幅度下降,系統啟動速度變慢,也會使是系統在執行一些大型軟體時CPU使用率高。
二、系統程式因素
相對於硬體因素的影響,系統程式的異常也多為CPU資源使用率高的徵兆。以下分別以Dllhost程式和Services程式的分析來剖析異常的原因以及解決辦法。
1、Dllhost程式
特徵:伺服器正常CPU消耗應該在75%以下,而且CPU消耗應該是上下起伏的,出現這種問題的伺服器,CPU會突然一直處100%的水平,而且不會下降。檢視工作管理員,可以發現是DLLHOST.EXE消耗了所有的CPU空閒時間,管理員在這種情況下,只好重新啟動IIS服務,奇怪的是,重新啟動IIS服務後一切正常,但可能過了一段時間後,問題又再次出現了。
直接原因:有一個或多個ACCESS資料庫在多次讀寫過程中損壞,微軟的MDAC系統在寫入這個損壞的ACCESS檔案時,ASP執行緒處於BLOCK狀態,結果其它執行緒只能等待,IIS被死鎖了,全部的CPU時間都消耗在DLLHOST中。
解決辦法:安裝“一流資訊監控攔截系統”,使用其中的“首席檔案檢查官IIS健康檢查官”軟體,啟用”查詢死鎖模組”,設定:–wblock=yes監控的目錄,請指定您的主機的檔案所在目錄:–wblockdir=d:\test,監控生成的日誌的檔案儲存位置在安裝目錄的log目錄中,檔名為:logblock.htm停止IIS,再啟動“首席檔案檢查官IIS健康檢查官”,再啟動IIS,“首席檔案檢查官IIS健康檢查官”會在logblock.htm中記錄下最後寫入的ACCESS檔案的。
過了一段時間後,當問題出來時,例如CPU會再次一直處100%的水平,可以停止IIS,檢查logblock.htm所記錄的最後的十個檔案,注意,最有問題的往往是計數器類的ACCESS檔案,例如:”COUNT.MDB”,”COUNT.ASP”,可以先把最後十個檔案或有所懷疑的檔案刪除到回收站中,再啟動IIS,看看問題是否再次出現。我們相信,經過仔細的查詢後,您肯定可以找到這個讓您操心了一段時間的檔案的。
找到這個檔案後,可以刪除它,或下載下來,用ACCESS2000修復它,問題就解決了。
2、Services程式
症狀:在基於 Windows 2000 的計算機上,Services.exe 中的 CPU 使用率可能間歇性地達到100 %,並且計算機可能停止響應(掛起)。出現此問題時,連線到該計算機(如果它是檔案伺服器或域控制器)的使用者會被斷開連線。您可能還需要重新啟動計算機。如果 Esent.dll 錯誤地處理將檔案重新整理到磁碟的方式,則會出現此症狀。
解決方案
Service Pack 資訊:要解決此問題,請獲取最新的 Microsoft Windows 2000 Service Pack。有關其它資訊,請單擊下面的文章編號,以檢視 Microsoft 知識庫中相應的文章:260910 如何獲取最新的 Windows 2000 Service Pack修復程式資訊:Microsoft 提供了受支援的修補程式,但該程式只是為了解決本文所介紹的問題。只有計算機遇到本文提到的特定問題時才可應用此修補程式。此修補程式可能還會接受其它一些測試。因此,如果這個問題沒有對您造成嚴重的影響,Microsoft 建議您等待包含此修補程式的下一個 Windows 2000 Service Pack。
要立即解決此問題,請與“Microsoft 產品支援服務”聯絡,以獲取此修補程式。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70013954/viewspace-2869050/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql中CPU或記憶體利用率過高問題MySql記憶體
- cpu負載過高原因負載
- chrome佔用高cpu的原因 排查大致思路Chrome
- 提升CPU等資源的利用率,減少CPU的空轉
- CPU 使用率低高負載的原因,看看這篇!負載
- Linux 中 CPU 利用率是如何算出來的?Linux
- 導致雲伺服器CPU經常跑高的原因有哪些?伺服器
- 生產中遇到 cpu 過高排查
- 解讀surging 的記憶體過高的原因記憶體
- rundll32.exe程式佔用率CPU高的原因及解決方法
- 微軟將在9月中旬修復CPU利用率飆高的問題微軟
- Windows 平臺計算 CPU 總利用率Windows
- java應用CPU佔用率過高排查Java
- cpu使用率過高問題(Java)Java
- SQL Server CPU 利用率毛刺的分析定位與解決SQLServer
- 伺服器CPU跑滿的原因伺服器
- 來看看是什麼原因導致生產服上的系統CPU高的?
- 代理IP延遲過高的五大原因
- grafana展示的CPU利用率與實際不符的問題探究Grafana
- 公司某資料子系統定期cpu過高的診斷
- 一次FGC導致CPU飆高的排查過程GC
- mysql佔用CPU過高的解決辦法(新增索引)MySql索引
- mysql資料庫Cpu利用率100%問題排查MySql資料庫
- mongodb 利用率高如何解決?MongoDB
- 總結導致oracle資料庫主機CPU sys%高的一些原因Oracle資料庫
- 淺析香港伺服器記憶體過高的原因伺服器記憶體
- Oracle CPU使用率過高問題處理Oracle
- php-fpm 記憶體過高,CPU佔有率過高帶來的最佳化和調整PHP記憶體
- 詳述一條SQL引發的高CPU故障處理過程SQL
- Java cpu 高排查Java
- 深入 Nodejs 原始碼探究 CPU 資訊的獲取與利用率計算NodeJS原始碼
- cpu負載是什麼意思 電腦cpu負載過高怎麼處理解決負載
- 效能分析(2)- 應用程式 CPU 使用率過高案例
- Windows 10 作業系統 System Interrupt 系統中斷 CPU 佔用率高的原因和解決方法Windows作業系統
- 效能分析(5)- 軟中斷導致 CPU 使用率過高的案例
- 伺服器負載過高的原因是什麼?如何解決?伺服器負載
- 筆記本cpu溫度多少正常 筆記本cpu溫度過高怎麼解決筆記
- win10怎麼減少cpu使用率_win10cpu使用率過高的解決方法Win10