【伺服器】當我們對伺服器進行測試,我們測試什麼?
在今天 pc機越來越多承擔了主要的角色。當我們購買伺服器作為承擔業務基礎服務單元,如何保證伺服器的高效能和高可靠性非常關鍵。
對於伺服器我們要關注以下幾點
1 與上一代相比,改進與最佳化的地方,。
2 橫向比較,與其他廠商產品的優劣。
3 伺服器本身的效能表現。
4 價效比。
5 設計能耗。
通常我們主要針對第三點進行穩定性和效能方面的基準測試。
何為 基準測試 (Benchmark Test, 即BMT)
基準測試是指透過設計科學的測試方法、測試工具和測試系統,實現對一類測試物件的某項效能指標進行定量的和可對比的測試。
測試的關鍵點
cpu : 運算、尤其是浮點計算
a 檢查整數計算,複雜的浮點計算,關注cpu的計算能力
b 程式分配數量 關注多執行緒的併發處理能力。
c mutex 鎖的處理效能
記憶體 : 資料訪問的頻寬,吞吐量
a 總頻寬
b 讀寫效率
c cpu對記憶體的管理分配
測試記憶體時要關注讀寫效率,記憶體越大越好,可有效減少磁碟物理IO。
磁碟 : IOPS ,響應時間。
a 讀寫效能
b 隨機寫效能
關注資訊
a 不同核心,檔案系統下的iops,核心,檔案系統對io操作的演算法有所不同,會導致磁碟io效能的差異。
b 不同raid 級別,條帶配置場景下的IOPS
c 與記憶體結合時IOPS表現
d sar -d svctm ,%util
通常,磁碟物理IO是這個計算機體系裡最容易成為瓶頸的環節,也是最難最佳化的,因此最需要關注。隨著SSD、Fusion-IO出現,磁碟IOPS獲得了巨大提升,和記憶體相比,差距在不斷縮小。
資料庫: OLTP,響應時間
a QPS,TPS
b 響應時間,吞吐效率
關注資訊
a 不同核心、檔案系統下的TPS
b 不同陣列級別、條帶場景下的TPS
c 和記憶體結合時的TPS效能拐點
d 達到同樣TPS情景下,IO負載差別
e TPS滿負荷、低負荷情景下,各自IO利用率差別
f sar -d:tps、svctm、%util
當資料總量超過實體記憶體後,OLTP的TPS效能和磁碟IOPS成正比關係。因此,只有不斷提高記憶體,減少物理IO,並且不斷提升IOPS效能。
效能基準測試的關鍵點
硬體
cpu,記憶體,陣列卡(BBU,CACHE,條帶,讀寫策略) 硬碟
系統
核心引數,檔案系統,IO排程演算法
檔案
塊大小,訪問方式
其他
a 網路環境對over lan請求測試影響大
b 每完成一輪測試後要淨化環境
c 每輪測試一般至少持續1小時
關於測試工具
模擬意外事件
–斷電(硬體冷重啟)
–RESET(硬體熱重啟)
–陣列卡掉線
–磁碟掉線
–REBOOT(系統重啟)
–正常關閉服務(kill -TERM)
–異常關閉服務(kill -9)
–刪除檔案
–破壞性修改已開啟檔案
注意:
–持續壓力過大無法反應伺服器真實最優表現
–持續壓力時間過短亦無法反應伺服器真實最優表現
參考文章:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22664653/viewspace-757491/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 我們真的知道測試行業的內卷是什麼嗎?行業
- 當我們談論Promise時,我們說些什麼Promise
- 當我們談優化時,我們談些什麼優化
- 在阿里,我們如何管理測試環境阿里
- 測試設計技術 - 我們需要嗎?
- 孩子們,為什麼我建議你一定要會介面測試?
- 我們公司是如何做到高效並行測試的?並行
- 當我們談論格鬥遊戲時,我們在談論什麼遊戲
- 當我們擔心人工智慧時,我們擔心什麼?人工智慧
- 當我們談深度學習時,我們用它落地了什麼?深度學習
- 單元測試效率優化:為什麼要對程式進行測試?測試有什麼好處?優化
- 當我們在討論遊戲社群時,我們在討論什麼?遊戲
- 當我們說要繼續做技術,我們在說什麼?
- 關於測試平臺的搭建 (我們要不要搭建測試平臺)
- 我對測試的思考
- 當我們說一款遊戲“涼涼”時,我們在說什麼?遊戲
- 當我們在聊 RN 時,我們在聊什麼 | 技術點評
- 當我們說外掛系統的時候,我們在說什麼
- 當我們在談論HTTP快取時我們在談論什麼HTTP快取
- 為什麼我們要使用無伺服器架構伺服器架構
- 疫情對廣告效果影響多大?我們仔細研究了測試報告……測試報告
- 我們為什麼要嘗試前後端分離後端
- 我們通常這樣進行Linux弱口令檢測!Linux
- 當我們討論TCP的連線運輸管理時,我們在說什麼TCP
- 如果不做軟體測試了,我們還可以做這些!
- 測試者和開發者,為何我們不能友好地相處?
- 我對軟體測試的看法
- 當我們談論Virtual DOM時,我們在說什麼——etch原始碼解讀原始碼
- 當我們談微服務,我們在談什麼 (3) — 如何保障微服務的穩定性微服務
- 當我們談 Java 併發的時候,你們在談什麼?Java
- [原創]淺談我們需要全棧測試工程師嗎?全棧工程師
- [phpunit] 這樣跑測試,竟然節省了我們 90% 的時間PHP
- 當提到“事件驅動”時,我們在說什麼?事件
- 失格與超越:當我們在體驗遊戲世界的劇情時,我們想要什麼?遊戲
- 當我們在談論建構函式注入的時候我們在談論什麼函式
- 什麼情況下進行效能測試
- 我們測試了上萬款應用程式,總結了APP測試流程和常見問題APP
- 為什麼我們需要 VuexVue