Jmeter多机联合产生负载 (转)

多机联合产生负载
Step 1: 启动负载产生机器上的服务
在所有负载产生的机器上启动 JMETER_HOME/bin/jmeter-server (unix) or JMETER_HOME/bin/jmeter-server.bat (windows) 脚本。
Step 2: 配置Controller机器使之可控制负载产生的机器
把所有负载产生机器的IP地址加入到Controller机器上Jmeter的配置文件中。编辑Controller机器上的Jmeter属性文件/bin/jmeter.properties,找到以下行"remote_hosts",然后增加负载产生机器的IP地址,使用逗号分隔。
Step 3: 启动控制端
现在就可以在Controller端启动Jemeter了(Windows上 "bin/jmeter.bat",UNIX上"bin/jmeter")。你会注意到Run菜单下多处了两个子菜单"Remote Start"和"Remote Stop"。这些子菜单下又会列出所有在属性文件中增加的IP地址。
手动运行负载产生机器上的脚本
有些情况下Jmeter负载产生机器上的脚本可能运行不起来,以下步骤讲解如何手动启动Jmeter服务:
Step 1a: Start the RMI Registry
Jmeter使用Remote Method Invocation (RMI)作为机器间的通讯方法。因此,首先要运行RMI注册程序(名为"rmiregistry"),这个组件在JDK 的bin目录下。在运行rmiregistry前,确认存在以下环境变量:
" JMETER_HOME /lib/ext/ApacheJMeter_core.jar
" JMETER_HOME /lib/jorphan.jar
" JMETER_HOME /lib/logkit-1.2.jar
Rmiregistry程序需要读取某些Jmeter的类文件。直接运行rmiregistry,它会使用1099端口。
Step 1b: 启动Jmeter服务
启动RMI注册程序后,就可以启动Jmeter服务了。使用命令"jmeter -s"。
Steps 2 and 3 与上面的相同。
常见问题:
1、 在Controller端上控制某台机器Run,提示"Bad call to remote host"。
解决方式:检查被控制机器上的jmeter-server有没有启动。
2、 如何重起服务。
解决方式:杀死它,先使用ps aux|grep rimregistry查到该进程的pid,然后使用kill -9 pid杀死该进程后重新启动。
3、 一些注意的问题。
负载产生机器与Controller机器上JDK、Jmeter的版本最好一致。不一致会发生什么问题未知:).
4、 友情提示:尽管我通过Linux上的Jmeter控制Windows上的Jmeter尚未成功,不过我想应该是可以的。各种平台上互相调用也是没有问题的。
5、 如果你在运行Jmeter的机器上连JDK都没有装就不要问问题了:(

转自
http://blogold.51testing.com/index.php?op=ViewArticle&articleId=1139&blogId=24
posted on 2006-10-20 10:58  microtea  阅读(1348)  评论(0编辑  收藏  举报