阿里云ECS Windows服務(wù)器CPU占用高的處理辦法
我們?cè)谑褂冒⒗镌品?wù)器ECS實(shí)例時(shí),有時(shí)候會(huì)遇到出現(xiàn) CPU 占用高的情況,如果長(zhǎng)期處于這種情況,會(huì)對(duì)正常訪問(wèn)服務(wù)器以及服務(wù)器上運(yùn)行的應(yīng)用產(chǎn)生一定的影響。下文阿里云代理商就為大家分析出現(xiàn)這種情況的原因以及解決辦法:
Windows 實(shí)例出現(xiàn) CPU 高利用率原因分析
在一些情況下出現(xiàn) CPU 的高占用是正常的,假如購(gòu)買(mǎi)了 Windows Server 2012 低規(guī)格實(shí)例(如實(shí)例規(guī)格為 1 核 1 GB),實(shí)例 CPU 有時(shí)突然飆高,排查后發(fā)現(xiàn) Windows Update 服務(wù)在進(jìn)行自動(dòng)更新。其他情況,如:病毒木馬、第三方殺毒軟件、應(yīng)用程序異常、驅(qū)動(dòng)異常、高 I/O 或高中斷處理的應(yīng)用程序,也會(huì)造成 CPU 占用率高。
解決方法
1、CPU 飆高時(shí),檢查是否后臺(tái)有執(zhí)行 Windows Update 進(jìn)程。
2、CPU 飆高時(shí),檢查殺毒軟件是否在后臺(tái)執(zhí)行掃描操作。用戶可以直接把殺毒軟件的版本更新到最新,或者是直接刪除殺毒軟件
3、打開(kāi) 運(yùn)行 -> MSCONFIG 禁用所有非 Microsoft 自帶服務(wù)驅(qū)動(dòng),然后檢查問(wèn)題是否再次發(fā)生。
4、使用商業(yè)版殺毒軟件或 Microsoft 免費(fèi)工具 Microsoft Safety Scanner 在安全模式下掃描殺毒。
5、運(yùn)行 Windows Update 安裝最新 Microsoft 安全補(bǔ)丁。
6、當(dāng) ECS 實(shí)例有大量的磁盤(pán)訪問(wèn),網(wǎng)絡(luò)訪問(wèn),高計(jì)算需求時(shí),CPU 高利用率是正常結(jié)果,您可以嘗試升級(jí)實(shí)例規(guī)格以應(yīng)對(duì)資源瓶頸問(wèn)題。
7、更多解決方法可以直接通過(guò)本站客服咨詢,阿里云代理商技術(shù)團(tuán)隊(duì)會(huì)為您提供一對(duì)一技術(shù)服務(wù)。
阿里云代理商 Windows 實(shí)例排查工具推薦
1】任務(wù)管理器
1、通過(guò)任務(wù)管理器能夠直觀的檢查應(yīng)用程序列表,從而定位占用CPU 較高的應(yīng)用程序(如下圖所示)
在性能頁(yè)面檢查 CPU 占用率時(shí),右擊 CPU 使用率圖示,單擊將圖形更改為 -> 邏輯處理器。如下圖顯示了 4 個(gè)邏輯 CPU 的利用率(如下圖所示)
2、如果某一個(gè)進(jìn)程 CPU 飆升到接近100% ,其它的CPU 變化不是很大,這就可以能是網(wǎng)絡(luò) I/O 處理造成的
2】 資源監(jiān)視器
用戶能夠直觀的檢查 CPU 使用率,同時(shí)還可以通過(guò)句柄和模塊搜索對(duì)應(yīng)的進(jìn)程(如下圖所示)
3】Process Explorer
一款 Microsoft Sysinternals 工具,通過(guò)配置正確的 Symbols,檢查對(duì)應(yīng)應(yīng)用程序的線程調(diào)用的 Call Stack,來(lái)定位可能的問(wèn)題驅(qū)動(dòng)
4】性能監(jiān)視器
注:性能監(jiān)視器(Performance Monitor)是 Microsoft 專(zhuān)業(yè)收集各個(gè)組件性能計(jì)數(shù)器的工具。對(duì)于系統(tǒng)CPU資源消耗,有多個(gè)Counter來(lái)檢查。通過(guò)開(kāi)始-> 運(yùn)行-> perfmon 打開(kāi)工具。
Performance 有三個(gè)核心參數(shù):
\Processor(_Total)\% Processor Time
\Processor(*)\% User Time
\Processor(*)\% Privileged Time
其中,\Processor(_Total)\% Processor Time 是 \Processor(*)\% User Time 與 \Processor(*)\% Privileged Time使用之和
1、查看 \Processor(*)\% Privileged Time 數(shù)據(jù)。
\Processor(*)\% Privileged Time 是應(yīng)用程序在內(nèi)核中執(zhí)行系統(tǒng)調(diào)用(例如驅(qū)動(dòng)、IRP,上下文切換等)操作的時(shí)間。如果操作系統(tǒng)花費(fèi)多余 30% 的時(shí)間在Privileged Time,如下圖,意味著實(shí)例正在進(jìn)行高 I/O 吞吐相關(guān)的操作
2、% Privileged Time 很高時(shí),進(jìn)一步檢查 % DPC Time、% Interrupt Time 以及 Context Switches/sec的情況
高 % DPC Time、% Interrupt Time 意味著未知設(shè)備出現(xiàn)大量的操作或者很差的性能問(wèn)題
高 Context Switches/sec 意味著有大量的線程處于 Ready 狀態(tài),需要減少線程的數(shù)量解決問(wèn)題
3、% DPC Time、% Interrupt Time 很高時(shí),使用 Microsoft Xperf 工具進(jìn)一步分析
4、查看 \Processor(*)\% User Time 數(shù)據(jù) 如果問(wèn)題還未能解決,您可以到阿里云社區(qū)進(jìn)行免費(fèi)咨詢,或聯(lián)系云市場(chǎng)商家尋求幫助。
北京優(yōu)勝智連科技有限公司-阿里云全國(guó)授權(quán)代理,11年專(zhuān)注于阿里云服務(wù)器,安全可靠放心!