转 15 jmeter分布式性能测试
15 jmeter分布式性能测试
背景
由于jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起Java内存溢出的错误。要解决这个问题,可以使用分布式测试,运行多台机器运用所谓的Agent来分担jmeter自身的压力,并借此来获取更大的并发用户数,但是需要进行相关的一些修改。
总结一句话,jmeter由java开发,耗内存、cpu,所以大并发下还是需要分布式的。
测试步骤
1.关闭防火墙。
2.在所要运行jmeter并作为负载生成器的机器上安装jmeter,并确定其中一台机器作为Controller,其他机器作为Agent。然后运行所有Agent机器上的jmeter-server.bat文件。假定我们使用两台机器192.168.0.11和192.168.0.12作为Agent(Agent机器上必须安装JDK,并设置环境变量)。
3.在Controller机器上的%JMeter_home%/bin目录下,编辑jmeter.properties中“remote_hosts=127.0.0.1”。其中的127.0.0.1表示运行jmeter Agent的机器,这里需要修改为“remote_hosts=192.168.0.11:1099,192.168.0.12:1099”,其中的1099为端口号。
4.启动controller机器上的jmeter.bat,选择菜单Run中“远程启动”中的192.168.0.11:1099或192.168.0.12:1099来分别运行Agent。如果两个都要执行,可以点击Run菜单下的“远程全部启动”。
5.有时候用作代理的机器太少,仍不能满足需要,则需要将作为Controller的电脑也当做Agent,则同样需要修改jmeter.properties文件,将Controller的IP写入。同时,这个时候需要先打开Controller电脑中%JMeter_home%/bin目录下的jmeter-server.bat,然后再打开jmeter.bat。此时,进入Run下的“远程启动”菜单,可以看到Controller也作为远程机器进行运行。
常见问题
1.确定在controller机器上安装jdk版本和jmeter一致。
2.Agent机器启动jmeter-server.bat时,后台提示:“Could not find ApacheJmete_core.jar”。
解决方法:这个是开始没有找到ApacheJmete_core.jar,如果不希望看到Could not find的字样,需要添加环境变量JMETER_HOME,路径为bin目录的上一级目录,这样启动jmeter-server服务时,就不会看到“Could not find ApacheJmete_core.jar”。
3.jmeter分布式控制过程中,各个Agent启动的线程数等于线程组中的配置。
最新文章
- 《如何使用Javascript判断浏览器终端设备》
- jqueryGannt用法
- synchronized同步对象锁
- Unity3D手势及重力加速度(神庙逃亡操作)
- 关于开始学习Leetcode的第一帖
- Java与云计算有什么关系呢
- Explain 结果解读与实践
- AdminLTE
- HDU5339
- Scala-的元组和映射
- win7 AnkhSVN 安装报错
- 一起happy--C++小组Alpha版本发布说明
- 【原创】大叔经验分享(8)创建hive表时用内部表还是外部表
- BZOJ4836 二元运算(分治FFT)
- csv到mysql数据库如何分割
- 基于.Net平台C#的微信网页版API
- Linux动态库开发
- redis之(十九)redis的管理
- USE [EPPM] [dbo].[REFRDEL_CLEANUP]
- CentOs 6.5设置使用私钥登录关闭ssh的密码登录修改ssh默认端口
热门文章
- UWP 自定义RadioButton实现Tab底部导航
- App性能测试揭秘(Android篇)
- 干货满满:python实现二维图制作
- 【磁盘/文件系统】第二篇:标准磁盘分区流程针对fdisk(硬盘容量小于2T且分区数不能大于15个分区)
- linux不同环境变量文件的比较,如/etc/profile和/etc/environment
- .NET Core AWS S3云存储
- 学习 Gin 问题总结 2020.12.29
- JAVA_JNI字段描述符“([Ljava/lang/String;)V”(Android)
- java中string、stringBuild、stringBuffer的区别
- HIve中 datediff,date_add和date_sub的用法