您的位置:首頁技術文章
文章詳情頁

Docker部署nGrinder性能測試平臺過程解析

瀏覽:3日期:2024-11-11 18:31:45

什么是nGrinder?

nGrinder是用于壓力測試的平臺,使您可以同時執行腳本創建,測試執行,監視和結果報告生成器。開源nGrinder通過消除不便并提供集成環境,提供了進行壓力測試的簡便方法。它是根據Apache許可版本2.0許可的,是基于Grinder的開源的web性能測試平臺,由韓國最大互聯網公司NHN公司的開發團隊進行了重新設計和完善。

http://naver.github.io/ngrinder/

nGrinder由三個組件組成

controller:一個Web應用程序,使性能測試人員可以創建測試腳本并配置測試相關參數,自動分發測試腳本到agent。

agent:在代理服務器上加載運行測試進程和線程,建議不要部署在被測試的服務器上。

Monitor:用于監控被測服務器的系統性能(例如:CPU/MEMORY),必須部署在被測試服務器上。

nGrinder架構

Docker部署nGrinder性能測試平臺過程解析

工作原理

由一個控制端controller和多個代理端agent組成,通過控制端(瀏覽器訪問)建立測試場景,然后分發到代理端進行壓力測試。用戶按照一定規范編寫測試腳本,controller會將腳本以及需要的資源分發到agent,用jython執行。在腳本執行的過程中收集運行情況、相應時間、測試目標服務器的運行情況等。并且保存這些數據生成測試報告,通過動態圖和數據表的形式展示出來。用戶可以方便的看到TPS、被測服務器的CPU和內存等情況。部署方式

1、單Controller多agent

2、多Controller和多agent

Docker上運行nGrinder

運行controller

docker pull ngrinder/controllerdocker run -d -v ~/ngrinder-controller:/opt/ngrinder-controller --name controller -p 80:80 -p 16001:16001 -p 12000-12009:12000-12009 ngrinder/controller

控制器在/ opt / ngrinder-controller下創建一個數據文件夾,以維護測試歷史記錄和配置數據。為了持久地保留數據,您應該將容器上的文件夾/ opt / ngrinder-controller映射到主機上的文件夾。

端口信息:

80:默認控制器Web UI端口。

9010-9019:代理通過這些端口連接到控制器集群。

12000-12029:控制器通過這些端口分配壓力測試。

運行agent

docker pull ngrinder/agentdocker run -d --name agent --link controller:controller ngrinder/agent

docker-compose快速部署

使用docker-compose服務編排裝一個Controller和兩個agent:

編寫yml

vim docker-compose.yml

ngrinder-controller-1: image: ngrinder/controller container_name: ngrinder-controller-1 hostname: ngrinder-controller-1 ports: - 8087:80 - 16001:16001 - 12000-12009:12000-12009 volumes: - /data/ngrinder/controller-1:/opt/ngrinder-controllerngrinder-agent-1: image: ngrinder/agent container_name: ngrinder-agent-1 hostname: ngrinder-agent-1 volumes: - /data/ngrinder/agent-1:/opt/ngrinder-agent command: - 10.255.254.25:8087ngrinder-agent-2: image: ngrinder/agent container_name: ngrinder-agent-2 hostname: ngrinder-agent-2 volumes: - /data/ngrinder/agent-2:/opt/ngrinder-agent command: - 10.255.254.25:8087

啟動

docker-compose -f docker-compose.yml -d up

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Docker
相關文章:
国产综合久久一区二区三区