無(wú)論您的服務(wù)器是在Windows還是Unix上運(yùn)行,這些關(guān)鍵性能領(lǐng)域都可以作為任何服務(wù)器監(jiān)控策略的良好起點(diǎn),跟蹤這些性能指標(biāo)作為性能瓶頸的指標(biāo)非常重要。那么如何監(jiān)控服務(wù)器性能?
1、中央處理器 (CPU) 和內(nèi)存
每當(dāng)服務(wù)器性能下降時(shí),通常會(huì)懷疑服務(wù)器CPU利用率和內(nèi)存資源。如果您的服務(wù)器的CPU使用率異常高或內(nèi)存使用率很高(可用的可用內(nèi)存空間較少),您的應(yīng)用程序的性能將受到影響。
很高興知道服務(wù)器上最消耗 CPU 和內(nèi)存的進(jìn)程是什么。這對(duì)于快速修復(fù)資源使用問(wèn)題很重要。要測(cè)量的指標(biāo)包括 CPU 進(jìn)程計(jì)數(shù)、CPU 線程計(jì)數(shù)和 CPU % 中斷時(shí)間。
您需要監(jiān)控服務(wù)器的內(nèi)存使用情況。這包括可用的可用內(nèi)存、寫(xiě)入速率頁(yè)面以釋放物理內(nèi)存空間等。所有這些指標(biāo)都可以幫助您隨時(shí)了解服務(wù)器的運(yùn)行狀況。
2、服務(wù)器正常運(yùn)行時(shí)間
您的網(wǎng)站必須全天候運(yùn)行并可用。服務(wù)器正常運(yùn)行時(shí)間衡量系統(tǒng)運(yùn)行的時(shí)間量。當(dāng)系統(tǒng)可能在不知不覺(jué)中重新啟動(dòng)時(shí),此指標(biāo)可用于提醒您。
如果您發(fā)現(xiàn)預(yù)期的服務(wù)器可用性周期與服務(wù)器正常運(yùn)行時(shí)間數(shù)據(jù)之間存在差異,則系統(tǒng)至少發(fā)生了一次故障。確認(rèn)所有預(yù)計(jì)在系統(tǒng)發(fā)生故障時(shí)運(yùn)行的計(jì)劃任務(wù)是否已完成。
3、磁盤(pán)活動(dòng)
磁盤(pán)活動(dòng)是磁盤(pán)驅(qū)動(dòng)器主動(dòng)處理請(qǐng)求所花費(fèi)的時(shí)間。必須監(jiān)控幾個(gè)關(guān)鍵指標(biāo):
磁盤(pán)繁忙時(shí)間 - 測(cè)量磁盤(pán)處于活動(dòng)狀態(tài)的時(shí)間百分比。如果這個(gè)值很高,這意味著你訪問(wèn)磁盤(pán)的請(qǐng)求正在堆積。
輸入和輸出操作 (I/OP) – 指示磁盤(pán)驅(qū)動(dòng)器上的工作負(fù)載。監(jiān)控此指標(biāo)有助于了解您的磁盤(pán)正在承受的工作負(fù)載。
磁盤(pán)讀/寫(xiě)——測(cè)量從磁盤(pán)讀/寫(xiě)數(shù)據(jù)塊所花費(fèi)的時(shí)間。較低的值意味著性能良好。
磁盤(pán)隊(duì)列長(zhǎng)度——衡量為隊(duì)列中的請(qǐng)求提供服務(wù)所花費(fèi)的時(shí)間。為了獲得最佳性能,磁盤(pán)隊(duì)列長(zhǎng)度應(yīng)該最小。
請(qǐng)注意,監(jiān)視磁盤(pán)的性能對(duì)于 I/OP 密集型任務(wù)非常重要。
4、頁(yè)面文件使用
未使用或未訪問(wèn)的數(shù)據(jù)存儲(chǔ)在頁(yè)面文件中。超出操作系統(tǒng) (OS)有限隨機(jī)存取存儲(chǔ)器 (RAM)空間的操作也會(huì)發(fā)送到頁(yè)面文件中進(jìn)行存儲(chǔ)。
當(dāng)您發(fā)現(xiàn)它的使用率很高時(shí),這意味著系統(tǒng)的頁(yè)面文件不足以滿足您的服務(wù)器的需求。
另一個(gè)重要指標(biāo)是頁(yè)面交換。每當(dāng)您的服務(wù)器工作內(nèi)存不足時(shí),都會(huì)保留一塊磁盤(pán)空間來(lái)臨時(shí)保存數(shù)據(jù),從而釋放更多空間。我們不建議頁(yè)面交換。通常,這意味著您沒(méi)有配置足夠的內(nèi)存來(lái)運(yùn)行您的服務(wù)器。
請(qǐng)記住,頁(yè)面交換是內(nèi)存容量耗盡的短期解決方案。由于頁(yè)面交換減少了響應(yīng)時(shí)間,因此應(yīng)該避免這種情況。
5、上下文切換
上下文切換是一個(gè)密集的過(guò)程。它發(fā)生在內(nèi)核(計(jì)算機(jī)操作系統(tǒng)核心的計(jì)算機(jī)程序)將處理器從一個(gè)進(jìn)程或線程切換到另一個(gè)時(shí)。每次發(fā)生上下文切換時(shí)都會(huì)使用 CPU 資源。所以當(dāng)發(fā)生大范圍的上下文切換時(shí),會(huì)占用越來(lái)越多重要的 CPU 資源。
這是由運(yùn)行多個(gè)繁忙進(jìn)程或應(yīng)用程序錯(cuò)誤導(dǎo)致的,這些錯(cuò)誤會(huì)增加上下文切換的次數(shù)。服務(wù)器上上下文切換的突然增加可能表明存在問(wèn)題。因此,監(jiān)視上下文切換對(duì)于服務(wù)器的性能至關(guān)重要。
6、時(shí)間同步
同一網(wǎng)絡(luò)上共享文件或相互通信的系統(tǒng)具有有時(shí)限的活動(dòng)。那么,想象一下系統(tǒng)時(shí)鐘是否不同步?結(jié)果可能是災(zāi)難性的。
不準(zhǔn)確的時(shí)鐘可能會(huì)導(dǎo)致數(shù)據(jù)被覆蓋或產(chǎn)生版本沖突。更糟糕的是,它可能導(dǎo)致程序無(wú)法正常運(yùn)行。始終根據(jù)參考時(shí)鐘監(jiān)控系統(tǒng)時(shí)鐘偏移。
7、處理用法
句柄是指應(yīng)用程序引用的資源。在您的服務(wù)器上運(yùn)行的應(yīng)用程序請(qǐng)求和接收資源使用它們,然后將它們返回給操作系統(tǒng)。有時(shí),由于程序錯(cuò)誤,應(yīng)用程序“忘記”在使用后返回句柄。這是句柄泄漏。
請(qǐng)記住,服務(wù)器上的資源是有限的。隨著時(shí)間的推移,重復(fù)的句柄泄漏可能會(huì)“耗盡”服務(wù)器,從而導(dǎo)致服務(wù)器的性能下降。隨著時(shí)間的推移密切監(jiān)控和處理使用情況。如果打開(kāi)句柄的數(shù)量急劇或持續(xù)增加,這可能意味著句柄泄漏。
您需要調(diào)查并確定罪魁禍?zhǔn)住D梢越K止此類進(jìn)程或修補(bǔ)程序。
8、過(guò)程活動(dòng)
可能存在應(yīng)用程序創(chuàng)建新進(jìn)程而不停止先前啟動(dòng)的進(jìn)程的情況。跨這些進(jìn)程的處理和多任務(wù)處理會(huì)給您的服務(wù)器帶來(lái)負(fù)擔(dān)。
結(jié)果,您的服務(wù)器性能將受到嚴(yán)重影響。確保應(yīng)用程序正確運(yùn)行并正確退出。為此,您需要跟蹤和監(jiān)控服務(wù)器上的所有流程活動(dòng)。
9、網(wǎng)絡(luò)流量
網(wǎng)絡(luò)活動(dòng)監(jiān)控對(duì)于衡量服務(wù)器性能至關(guān)重要。每個(gè)網(wǎng)絡(luò)接口都提供網(wǎng)絡(luò)活動(dòng)負(fù)載的指示。如果帶寬使用量接近網(wǎng)絡(luò)接口的最大速度,這可能表明存在瓶頸。
通過(guò)持續(xù)監(jiān)控網(wǎng)卡上的輸入和輸出 (I/O)活動(dòng),您可以發(fā)現(xiàn)可能的硬件故障或過(guò)載。您還可以規(guī)劃硬件要求以確保最佳服務(wù)器性能。
10、TCP 活動(dòng)
您的應(yīng)用程序是面向連接的。他們使用TCP作為傳輸協(xié)議。HTTP、SQL、SMTP 在下面使用 TCP。如果 TCP 層性能下降,應(yīng)用程序的性能也會(huì)下降。
有幾個(gè)重要的指標(biāo)有助于監(jiān)控 TCP:
進(jìn)出服務(wù)器的連接速率有助于指示服務(wù)器工作負(fù)載。
服務(wù)器上的連接斷開(kāi)數(shù)。高數(shù)字可能表明存在問(wèn)題。
重傳百分比——當(dāng)服務(wù)器沒(méi)有收到來(lái)自客戶端的確認(rèn)時(shí)發(fā)生重傳。超時(shí)后,服務(wù)器必須再次發(fā)送傳輸。為確保良好的 TCP 性能,請(qǐng)盡量減少重傳。請(qǐng)記住,重復(fù)重傳可能會(huì)導(dǎo)致吞吐量嚴(yán)重下降。
11、操作系統(tǒng)日志文件
監(jiān)控服務(wù)器運(yùn)行狀況的最常用方法可能是操作系統(tǒng)日志,因?yàn)樗鼈儼e(cuò)誤詳細(xì)信息、崩潰和其他類型的異常,可幫助您解決任何問(wèn)題。
雖然Windows提供系統(tǒng)、安全和應(yīng)用程序日志文件,但Unix將系統(tǒng)日志和 cron 日志文件存儲(chǔ)在 /var/log 目錄中。定期對(duì)日志事件進(jìn)行監(jiān)控、分析和警報(bào)有助于提醒您注意任何服務(wù)器異常。
審核編輯 黃昊宇
-
監(jiān)控
+關(guān)注
關(guān)注
6文章
2162瀏覽量
55041 -
服務(wù)器性能
+關(guān)注
關(guān)注
0文章
3瀏覽量
7034
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論