概述
用 jmeter 做性能測試的時候,避免不了要去分析服務器資源。服務器分為 windows 和 linux,資源包括 cpu,內存,磁盤,jvm,網絡等等。那么如何去監聽服務器資源呢?監聽之后又怎么去分析呢,需要我們去思考一下
linux 資源監聽
linux 安裝插件
用 jmeter 監聽 linux 服務器,需要下面幾個插件。
訪問網址 (官網)[http://jmeter-plugins.org/downloads/all]
下載三個文件。其中 JMeterPlugins-Standard 和 JMeterPlugins-Extras 是客戶端的,ServerAgent 是服務端的。
前兩個是 jmeter 擴展插件,解壓后將 jar 拷貝包到 jmeter 的 lib/ext 目錄下,最后一個是服務器監控插件,解壓到服務器上
將 ServerAgent-2.2.1.zip 解壓后放在需要監控的服務器上,並執行 ./startAgent.sh啟動監控
配置 jmeter 監聽器
jmeter 下添加監聽器,如下圖
配置監聽 host,運行端口 4444,選擇要監聽的資源

觀察下方的監聽圖表,此時運行的是 cpu 的監聽器

注意:此時監聽的是服務器整體的 cpu 使用率,也就是 us+sy,jmeter 由此衍生出了一個隱藏功能
jmeter 監聽服務器隱藏功能
雙擊下圖紅色圓圈的位置,會出現隱藏的三個按鈕

這個隱藏功能可以讓我們更靈活的監聽資源
idle:cpu 空閑率
system:系統態 cpu 使用率
user:用戶態 cpu 使用率
iowait:io 等待率
irq:cpu 硬中斷
softirq:cpu 軟中斷
結合一下 tps 監聽器,我們可以觀察到一些有趣的事情。
當我們的 tps 急速下降的時候,cpu 使用率也跟着下降因為我們的 jvm 年輕代在 gc 的時候會導致所有線程暫停,cpu 使用率和 tps 自然就跟着掉下來了
如下圖所示,當我手動執行 GC 的時候,tps 和 cpu 使用率持續下降並劇烈波動
來源:https://testerhome.com/articles/21314