1. 程式人生 > 其它 >效能指標解讀與效能分析

效能指標解讀與效能分析

效能測試監控關鍵指標:

1、系統指標:與⽤戶場景與需求直接相關的指標

2、伺服器資源指標:硬體伺服器的資源使⽤情況的指標

3、JAVA應⽤ : JAVA應⽤程式在運⾏時的各項指標

4、資料庫:資料庫伺服器運⾏時需要監控的指標

5、壓測機資源指標:測試機在模擬⽤戶負載時的資源使⽤情況 ⼀般情況下,測試⼈員執⾏效能測 試時,只需要關注1、2、5就可以,判斷系統是否有效能問題 ⽽開發⼈員要定位效能問題時,需要 再次運⾏,並監控所有的效能指標,來進⾏分析並調優

系統指標

  • 可以直接用來衡量系統處理能力的指標是(吞吐量)
  • 在系統處於請壓力區(未飽和)時,使用者數上升,平時響應時間(基本不變),系統吞吐量(上升)
  • 在系統處於重壓⼒區(基本飽和)時,併發⽤戶數上升,平均響應時間(上升),系統吞吐量(基 本不變)
  • 在系統處於崩潰區(壓⼒過載)時,併發⽤戶數上升,平均響應時間(上升),系統吞吐量(下 降)

硬體伺服器資源指標

硬體的組成:控制器+計算器+輸出+輸出+儲存

控制器+計算器:CPU、GPU

儲存:硬碟、記憶體

輸⼊+輸出:外接裝置,⽹絡,⿏標鍵盤。

記憶體和虛擬記憶體:

1、正常情況下,程式載入到記憶體中來執⾏

2、當記憶體不夠時,會載入部分⽴即要執⾏的程式到記憶體中,其他的程式部分放在磁碟中(虛擬記憶體)

3、當⽴即要執⾏的程式執⾏完成後,從虛擬記憶體中讀取其他的資料內容到實際記憶體中,再執⾏程式的 處理

4、依次迴圈第3步完成程式的運⾏ 卡的原因的就是:每次都需要從虛擬記憶體(磁碟)中讀取資料進⾏執⾏,磁碟的讀取速度相對CPU和記憶體⽽ ⾔⾮常,因此感覺記憶體不⾜程式很卡 閃退的原因就是:在第2步中,需要載入部分⽴即要執⾏的程式到記憶體中,如果當前的記憶體空間不滿⾜ 最 低要求(⽴即要執⾏的程式所需要的記憶體)時,就會出現閃退

磁碟IO

網路

監控實際的⽹絡流量,與⽹絡頻寬做對⽐,如果實際⽹絡流量與⽹絡頻寬接近,則說明⽹絡存在瓶頸, 需要優化。

百兆頻寬:100Mbyte/s 實際技術中衡量的寬頻的單位:KB/s,因此需要換算:100/8 = 12.5MKB/s

磁碟讀取資料方式

尋道時間

定址時間

讀取時間

資料庫

mysql資料庫原理:

1.mysql主要儲存在磁碟盤上

2.磁碟讀取資料靠的是機械運動,當需要從磁碟讀取資料時,系統會將資料邏輯地址傳給磁碟,磁碟的 控制電路按照定址邏輯將邏輯地址翻譯成實體地址,即確定要讀的資料在哪個磁軌,哪個扇區。

3.為了讀取這個扇區的資料,需要將磁頭放到這個扇區上⽅,為了實現這⼀點,磁頭需要移動對準相應 磁軌,這個過程叫做尋道,所耗費時間叫做尋道時間。

4.然後磁碟旋轉將⽬標扇區旋轉到磁頭下,這個過程耗費的時間叫做旋轉時間。

5.最後便是對讀取資料的傳輸

6.每次讀取資料花費的時間可以分為尋道時間、旋轉延遲、傳輸時間三個部分。(ps.各個時間的花費:)

尋道時間是磁臂移動到指定磁軌所需要的時間,主流磁碟⼀般在5ms以下。

旋轉延遲就是我們經常聽說的磁碟轉速,⽐如⼀個磁碟7200轉,表示每分鐘能轉7200次,也就是 說1秒鐘能轉120次,旋轉延遲就是1/120/2 = 4.17ms。

傳輸時間指的是從磁碟讀出或將資料寫⼊磁碟的時間,⼀般在零點⼏毫秒,相對於前兩個時間可以 忽略不計。

   I/O操作問題:       

a. 訪問⼀次磁碟的時間,即⼀次磁碟IO的時間約等於5+4.17 = 9ms左右.       

b.⼀臺500 -MIPS的機器每秒可以執⾏5億條指令.       

c.因為指令依靠的是電的性質,換句話說執⾏⼀次IO的時間可以執⾏40萬條指令.       

d.資料庫動輒⼗萬百萬乃⾄千萬級資料,每次9毫秒的時間,顯然是個災難。

磁碟預讀

因此為了提⾼效率,要儘量減少磁碟I/O,為了達到這個⽬的,磁碟往往不是嚴格按需讀取,⽽是 每次都會預讀。

即使只需要⼀個位元組,磁碟也會從這個位置開始,順序向後讀取⼀定⻓度的資料放⼊記憶體。

這樣做的理論依據是電腦科學中著名的區域性性原理:當⼀個數據被⽤到時,其附近的資料也通常 會⻢上被使⽤。

預讀的⻓度⼀般為⻚(page 4kb⼤⼩的資料 )的整倍數。

⻚是計算機管理儲存器的邏輯塊,硬體及作業系統往往將主存和磁碟儲存區分割為連續的⼤⼩相等 的塊

每個儲存塊稱為⼀⻚(在許多作業系統中,⻚得⼤⼩通常為4k),主存和磁碟以⻚為單位交換數 據。

當程式要讀取的資料不在主存中時,會觸發⼀個缺⻚異常,此時系統會向磁碟發出讀盤訊號 磁碟會找到資料的起始位置並向後連續讀取⼀⻚或⼏⻚載⼊記憶體中,然後異常返回,程式繼續運 ⾏。

壓測機資源指標

模擬真實場景和伺服器儘可能保持⼀致即可

我會試著放下往事,管他有多美