Jmeter使用plugins外掛進行伺服器效能監控
效能測試時,我們的關注點有兩部分
1 服務本身:併發 響應時間 QPS
2 伺服器的資源使用情況:cpu memory I/O disk等
JMeter的plugins外掛可以實現對"2"的監控,具體操作步驟如下(主要記錄我的實踐過程):
說明:我的jmeter版本是3.1
一 下載外掛
1 訪問網址http://jmeter-plugins.org/downloads/all/,下載三個檔案。其中JMeterPlugins-Standard和JMeterPlugins-Extras是客戶端的,ServerAgent是服務端的。
2 解壓客戶端的兩個檔案,進入其路徑JMeterPlugins-Extras(Standard)-1.3.1\lib\ext,複製JmeterPlugins-Extras.jar(JmeterPlugins-Standard.jar)兩個檔案,放到JMeter客戶端的lib/ext資料夾中,開啟JMeter,可在監聽器中看到Permon Metrics Collector,客戶端配置成功。
3 將ServerAgent-2.2.1.jar上傳到被測伺服器,解壓,進入目錄,Windows環境,雙擊ServerAgent.bat啟動;linux環境執ServerAgent.sh啟動,預設使用4444埠,出現如下情況即服務端成功:
二 測試使用情況
1 ServerAgent啟動的校驗
a 在膝上型電腦開啟telnet監聽(控制面板-程式-開啟或關閉Windows功能-telnet客戶端勾選開啟)
b cmd進入命令框,輸入如下內容:
telnet yourip 4444 #連線ServerAgent test #傳送test進行測試 exit #退出,即斷開連線
c 觀察server端是否有接收到訊息,出現如下情況說明ServerAgent開啟成功
[[email protected] ~]# /opt/soft/ServerAgent-2.2.1/startAgent.sh INFO 2016-02-18 10:52:51.749 [kg.apc.p] (): Binding UDP to 4444 INFO 2016-02-18 10:52:52.749 [kg.apc.p] (): Binding TCP to 4444 INFO 2016-02-18 10:52:52.754 [kg.apc.p] (): [email protected]Agent v2.2.0 started INFO 2016-02-18 10:56:55.198 [kg.apc.p] (): Accepting new TCP connection #成功連線 INFO 2016-02-18 10:57:00.830 [kg.apc.p] (): Yep, we received the 'test' command #接收到test訊息 INFO 2016-02-18 10:57:05.185 [kg.apc.p] (): Client disconnected #斷開連線
2 Jmeter客戶端的監聽測試
a 開啟JMeter.bat,新增監聽器Permon Metrics Collector-Add Row新增一行monitor配置(修改Host/IP為測試IP)-執行-觀察server日誌即chart圖示內容。
ServerAgent端的日誌: INFO 2016-02-18 11:02:14.197 [kg.apc.p] (): Accepting new TCP connection INFO 2016-02-18 11:02:14.243 [kg.apc.p] (): Yep, we received the 'test' command INFO 2016-02-18 11:02:14.246 [kg.apc.p] (): Starting measures: cpu: INFO 2016-02-18 11:02:14.402 [kg.apc.p] (): Client disconnected
b 執行jmeter時,成功連線然後立刻斷開了,並沒有獲取我們想要的資料。猜想需要一個時間控制的元器件,使其能夠獲取一段時間的資料。
i 步驟:新增執行緒組(不添加發送請求),設定迴圈次數為永遠,點選執行。
結果:成功連線然後立刻斷開
ii 新增執行緒組,設定迴圈次數為"用玄";為執行緒組任意新增一個Sampler(並不設定引數);新增一個PerfMon Metrics Collector監聽器;點選執行。
結果:成功獲取chart圖,點選stop,即結束監聽資料。全部配置圖如下