单台压测机通常会遇到客户端瓶颈,受制于客户机的性能。可能由于网络带宽,CPU,内存的限制不能给到服务器足够的压力,这个时候你就需要用到分布式方案来解决客户机的瓶颈,压测的结果也会更加接近于真实情况。
jdk和jmeter的下载和安装就不说了
jmeter 分布式压测原理:
分布式压测分为两块: 控制器(controller)和代理(agent)
- controller 负责把脚本分发给 agent执行。
- agent 负责执行脚本,产生对服务器的实际压力,agent 不需要运行 jmeter,运行 jmeter-server.bat 即可。agent 执行脚本后,把压测的结果发送给 controller。
- controller 作为控制器不加入实际测试,只负责发送和收集 agent 信息。
一、配置 agent
1. 我的jmeter版本是 apache-jmeter-5.0,在 agent 机器上需要修改配置 jmeter.properties,找到 server.rmi.ssl.disable=false 改成 true
# Password of Trust store #server.rmi.ssl.truststore.password=changeit # # Set this if you don't want to use SSL for RMI server.rmi.ssl.disable=true # 改成true
2. 双击 jmeter-server.bat ,这个 ip 有用,待会要配到 controller 机器上的配置文件里
二、配置 controller
1. 打开 controller 的配置文件找到 remote_hosts ,把刚才第二个步骤的 ip 配进去
2. 双击 jmeter.bat ,运行一个 agent
agent 服务上显示 运行成功