分布式压测怎么做
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式压测怎么做相关的知识,希望对你有一定的参考价值。
参考技术A 1、Jmeter分布式测试时,选择其中一台作为控制机(Controller),其它机器做为代理机(Agent)。2、执行时,Controller会把脚本发送到每台Agent上,Agent 拿到脚本后开始执行,Agent执行时不需要启动Jmeter,只需要把jmeter-server.bat文件打开,它应该是通过命令行模式来执行的。
3、执行后,Agent会把结果回传给Controller,Controller会收集所有Agent的信息并汇总
步骤
1.CMD里输入IPCONFIG查出IP地址
2.执行机:打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,1099是端口号,可以随意自定义。启动执行机jmter-server.bat 执行机就算完成了
3.控制机:打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,192.168.8.174:1099,1099是端口号,可以随意自定义。如果有多台代理机,这里需要把所有的代理机的IP地址和端口号都加进来,用逗号分隔。
启动控制机 jmeter-server.bat
1.添加线程组 设置线程组100 循环次数2
写好请求--添加好断言以及聚合报告
2.点击菜单栏运行
3.查看聚合报告
linux下自动化实现分布式压测
上期笔者在 实现了 linux 下 自动化单机版压测,如果要多台机器进行分布式压测,怎么做呢? 经过笔者锲而不舍的摸索和实验,终于完美实现,分享如下:
1、先进行分布式部署,详见楼主分享《linux下性能测试总结》中分布式部署
2、进行 shell 脚本开发
echo -n "Please input thread num(10):"
read cmd1
echo -n "Please input The number of seconds to complete the above threads(1):"
read cmd2
echo -n "Please input the Pressurizing time (seconds)(30):"
read cmd3
jmeter -n -r -t /jmeter/jmx/sign.jmx -l /jmeter/report/result_$cmd1.jtl -GthreadNum=$cmd1 -GthreadSec=$cmd2 -GdurationSec=$cmd3
3、运行后结果展示:
以上是关于分布式压测怎么做的主要内容,如果未能解决你的问题,请参考以下文章