Windows帶寬和CPU跑滿或跑高排查
使用云服務(wù)器時,若出現(xiàn)服務(wù)的速度變慢,或突然斷開,可以考慮服務(wù)器帶寬和 CPU 是否有跑滿或跑高的問題。若您預(yù)先創(chuàng)建報警任務(wù),當(dāng)帶寬和 CPU 跑滿或跑高時,系統(tǒng)將自動進(jìn)行報警提醒。Windows 系統(tǒng)下,您可以按如下步驟進(jìn)行排查:
1、定位問題。找到影響帶寬和 CPU 跑滿或跑高的具體進(jìn)程。
2、分析處理。排查影響帶寬和 CPU 跑滿或跑高的進(jìn)程是否正常,并分類進(jìn)行處理
3、對于 正常進(jìn)程:您需要對程序進(jìn)行優(yōu)化或者升級服務(wù)器配置。
4、對于 異常進(jìn)程:您可以手動對進(jìn)程進(jìn)行查殺,也可以讓使用第三方安全工具去查殺。
定位問題
微軟有多個工具可以定位 CPU 和帶寬跑滿或跑高的問題,例如任務(wù)管理器,資源監(jiān)視器(Resource Monitor),性能監(jiān)視器(Performance Monitor), Process Explorer,Xperf (Windows server 2008 以后),抓取系統(tǒng) Full Memory Dump 檢查。在流量大的情況下,您還可以使用 Wireshark 抓取一段時間的網(wǎng)絡(luò)包,分析流量使用情況。
注意: Windows 2008 版以上,通常使用系統(tǒng)自帶的資源監(jiān)視器監(jiān)控 CPU 和帶寬。
操作步驟
在桌面底部單擊 開始 菜單,選擇 運(yùn)行。
打開運(yùn)行框后,在框中輸入 perfmon -res 并單擊 確定。
在 資源監(jiān)視器 頁面中,查看各進(jìn)程是否有 CPU 或帶寬跑滿/跑高的現(xiàn)象。
針對占用資源較高的進(jìn)程,查看對應(yīng)的進(jìn)程 ID 和進(jìn)程的程序名。
定位進(jìn)程 ID 后,結(jié)合任務(wù)管理器判斷程序是否異常并定位程序的具體位置。
定位異常進(jìn)程前,需要在任務(wù)管理器中選擇 查看(V) > 選擇列(S)… 。
在彈出的框中選擇 PID(進(jìn)程標(biāo)識符),單擊 確定。
任務(wù)管理器的 進(jìn)程 頁面中,將會增加 PID 這一項(xiàng)。
單擊 PID 項(xiàng),通過排序,找到之前資源監(jiān)視器查看到的異常進(jìn)程。右擊進(jìn)程名稱,選擇 打開文件位置,定位進(jìn)程是不是惡意程序。
CPU 和帶寬跑滿或跑高的分析處理
您需要判斷影響 CPU 和帶寬跑滿或跑高的進(jìn)程,屬于正常進(jìn)程還是異常進(jìn)程,并分類進(jìn)行處理。
正常跑滿或跑高的分析處理
正常情況下,當(dāng)客戶頻繁訪問業(yè)務(wù),或由于 Windows 自身服務(wù)(更新服務(wù)等)都可能會占用較高網(wǎng)絡(luò)流量和 CPU 。針對正常進(jìn)程導(dǎo)致的 CPU 和帶寬跑滿或跑高的情況,請按照如下順序逐一進(jìn)行排查。
注意: Windows 2008 / Windows 2012 服務(wù)器建議內(nèi)存配置在 2G 或者 2G 以上。
檢查后臺是否有執(zhí)行 Windows Update 的行為。
建議在服務(wù)器上安裝殺毒軟件,進(jìn)行殺毒。如有安裝殺毒軟件,請檢查 CPU 或帶寬飆高時,殺毒軟件是否在后臺執(zhí)行掃描操作。如果可能,請升級殺毒軟件到最新版本,或者刪除殺毒軟件。
檢查該服務(wù)器內(nèi)應(yīng)用程序是否有大量的磁盤訪問/網(wǎng)絡(luò)訪問行為/高計(jì)算需求。通過嘗試增配服務(wù)器規(guī)格的方式,使用更多核數(shù)/內(nèi)存的規(guī)格來解決資源瓶頸問題,如升級帶寬。
若自身服務(wù)器配置較高,再去升級配置已經(jīng)沒有太大意義。架構(gòu)方面也并非是服務(wù)器配置越高就越好。此時,您需要嘗試進(jìn)行應(yīng)用分離,同時對相關(guān)程序進(jìn)行優(yōu)化。示例說明如下:
問題描述:當(dāng)一個服務(wù)器上面同時部署了 MySQL,PHP,Web 等多種應(yīng)用,即使配置比較高,也很容易出現(xiàn)資源負(fù)載異常。
解方法決:嘗試應(yīng)用分離,通過不同的服務(wù)器去承載不同的應(yīng)用。比如數(shù)據(jù)庫完全通過 RDS 來承載,減輕服務(wù)器本身的資源消耗和服務(wù)器內(nèi)部大量的調(diào)用。而程序優(yōu)化方面,您可以根據(jù)自身的配置狀況進(jìn)行調(diào)整,比如調(diào)整連接數(shù)和緩存配置,以及 Web 和數(shù)據(jù)庫調(diào)用時的各項(xiàng)參數(shù)等。
異常跑滿或跑高的分析處理
對于 CPU 和帶寬異常跑滿或跑高的情況,可能是被惡意病毒、木馬入侵導(dǎo)致的。有時三方惡意程序可能會利用操作系統(tǒng)的svchost.exe,或者 Tcpsvcs.exe來偽裝,引起高帶寬的占用。您需要手動對異常進(jìn)程進(jìn)行查殺。
注意:若您無法判斷進(jìn)程是否為病毒或木馬,建議將進(jìn)程名稱在網(wǎng)上進(jìn)行搜索后確認(rèn)。另外,建議您進(jìn)行進(jìn)程刪除操作前,提前完成備份。
使用商業(yè)版殺毒軟件,或使用微軟免費(fèi)安全工具 Microsoft Safety Scanner,在安全模式下進(jìn)行掃描殺毒,鏈接如下:https://www.microsoft.com/security/scanner/zh-cn/default.aspx 。
運(yùn)行 Windows Update 來安裝最新的微軟安全補(bǔ)丁。
使用 MSconfig 禁用所有非微軟自帶服務(wù)驅(qū)動。