哈嘍,大家好!我是minisummer!首先感謝您的關注!
今天給大家分享的內容是jmeter分布式壓測。
jmeter工具的使用,請看文集:http://www.lxweimin.com/nb/46502469
jmeter簡介
jmeter開源免費,用來模擬用戶負載來完成性能測試。
jmeter體系結構
元件:子菜單功能,如http請求
組件:一組元件的集合,如取樣器,有8大組件。
取樣器:模擬用戶操作,向服務器發出http請求
斷言:驗證結果是否正確
監聽器:收集測試結果
前置處理器:請求發送前的環境或參數準備
后置處理器:請求發送后,處理服務器返回結果,關聯
配置元件:模擬大量用戶操作進行參數化,記錄服務器返回的數據
邏輯控制器:控制請求
定時器:真實模擬用戶負載
線程組:模擬大量用戶負載情況
參考文章:https://www.cnblogs.com/rslai/p/11653047.html
分布式壓測原理
參考文章:https://www.cnblogs.com/zhuxr/p/9732213.html
當并發很大時,TPS不再增長出現瓶頸,一臺jmeter不能勝任,需要多臺jmeter同時加壓。
一臺作為調度機(master),其它機器做為執行機(slave)。由這個調度機統一控制執行機。
執行時:master會把腳本發送到每臺slave上,slave拿到腳本后開始執行,slave執行時不需要啟動Jmeter。只需要把jmeter-server.bat文件打開,它會自動通過非GUI模式來執行。
(注:如果引用到csv等外部的文件,則每臺slaver所在的機器都需要相應位置放置該文件。)
執行后:slave會把結果回傳給master,master會收集所有slave的信息并匯總。
master調度機配置
修改調度機jmeter/bin/jmeter.properties文件:
remote_hosts 配置負載機ip及端口;
取消注釋:server_port=1099
2.關閉RMI:找到server.rmi.ssl.disable 配置,取消注釋刪掉并改為true
slave負載機配置
1.關閉RMI:打開jmeter.properties文件,找到server.rmi.ssl.disable 配置,取消注釋刪掉并改為true
2.關閉防火墻
systemctl status firewalld #查看當前防火墻狀態
systemctl stop firewalld #關閉當前防火墻
systemctl disable firewalld #開機防火墻不啟動
3.啟動jmeter-server
master調度機執行腳本
監控服務器cpu,內存等信息
服務器上啟動startAent.sh
請大家多多指教~
以上內容希望對你有幫助,有被幫助到的朋友歡迎點贊,評論。
注:轉載請注明出處,商用請征得作者本人同意,謝謝!!!