性能測試時,我們的關注點有兩部分
1 服務本身:並發 響應時間 QPS
2 服務器的資源使用情況:cpu memory I/O disk等
JMeter的plugins插件可以實現對"二"的監控,具體操作步驟如下(主要記錄我的實踐過程):
說明:我的jmeter版本是2.13
一 下載插件
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打開成功
[root@bjdhj-120-215 ~]# /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] (): JP@GC 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,即結束監聽數據。全部配置圖如下
三 問題
1 JMeter應該有其他元器件可以達到讓它持續的作用,到時候再找