广交好友~~ 想要讨论的可以留下msn~~~ 希望群友网友经常能提出问题,一起解决,共同提高

详解JMeter远程测试(2)

上一篇 / 下一篇  2014-01-16 17:57:13 / 个人分类:LR/Jmeter 大类

11.3  详解JMeter远程测试(2)

步骤4(a):通过GUI客户端启动JMeter测试

现在轮到启动JMeter GUI客户端了。在MS-Windows环境下运行"bin/jmeter.bat"脚本,在UNIX环境下运行"bin/jmeter"脚本。测试人员会发现在运行(Run)菜单下,包含两个子菜单"Remote Start"和"Remote Stop",如图11-4所示。这两个子菜单中包含测试人员在属性文件中设置的JMeter远程服务器IP地址。此刻,请使用远程启动和停止来代替普通的JMeter启动和停止。

 
图11-4  运行菜单

步骤4(b):通过非GUI客户端启动JMeter测试

还有另外一种方法,测试人员可以通过非GUI客户端来启动远程服务器。命令如下:

  1. jmeter -n -t script.jmx -r 

或者:
  1. jmeter -n -t script.jmx -R server1,server2... 

其他标志可能也有用。

-Gproperty=value:在所有JMeter远程服务器中定义一个属性(可以多次出现)

-Z:在测试结束后退出远程服务器。

第一个例子会启动定义在JMeter属性remote_hosts中的远程服务器;而第二个例子会先定义远程服务器列表,接着启动它们。命令行客户端会在所有服务器停止后退出。

1.手动配置JMeter远程测试

在某些情况下,jmeter-server脚本不能正常工作(如果测试人员使用的操作系统不在JMeter开发者预期的范围内)。下面介绍如何启动JMeter远程服务器(对应上面的步骤2),其中包含了更多人工操作。

步骤2(a):启动RMI注册

从JMeter 2.3.1开始,JMeter远程服务器会自己启动RMI注册,因此这里的内容不适用于普通情况。如果要采用历史版本的操作方法,首先在JMeter远程服务器上定义JMeter属性server.rmi.create=false,并遵循如下指南。

JMeter使用Remote Method Invocation(RMI)作为远程通信机制。因此,测试人员需要用到JDK "bin"目录中的RMI注册程序(名为"rRmiregistry")。在运行Rmiregistry之前,请确保如下jar存在于测试人员的系统claspath中:

JMETER_HOME/lib/ext/ApacheJMeter_core.jar。

JMETER_HOME/lib/jorphan.jar。

JMETER_HOME/lib/logkit-1.2.jar。

注册程序需要访问特定JMeter类。运行Rmiregistry无须参数。默认情况下应用程序会监听端口1099。

步骤2(b):启动JMeter远程服务器

一旦RMI注册程序运行起来,就启动JMeter远程服务器。JMeter启动脚本需携带"-s"选项。

步骤3和步骤4同上面的介绍。

2.一些小技巧

JMeter/RMI要求建立一个从客户端到远程服务器的连接。这就会用到测试人员所选择的端口号,默认值是1099。JMeter/RMI还要求建立一个反向连接,目的是从远程服务器向客户端返回测试采样结果。这就会用到一个更高数字的端口号。如果在JMeter客户端与JMeter远程服务器之间存在任何防火墙或者网络过滤器,那么测试人员就需要确保它们已经被正确配置,并允许相关连接通信。如果有必要,请使用监听软件来观察通信的过程。

如果JMeter运行在Suse Linux上,下面这些技巧对测试人员可能会有帮助。默认的安装可能会启动防火墙。在这种情况下,远程测试将无法正常工作。如果测试人员发现连接被拒绝后,可以通过下面的选项打开debugging。从JMeter 2.3.1版本开始,RMI注册由JMeter远程服务器启动;不过相关选项依然可以通过JMeter命令行传递。例如,"jmeter -s -Dsun.rmi.loader.logLevel=verbose"(省略了-J前缀)。另外这些属性还可以被定义在system.properties文件中。

解决的方法是从etc/hosts中删除对127.0.0.1和127.0.0.2的回送(Loopback)。 当127.0.0.2的回送无效时,jmeter-server将无法连接到Rmiregistry。

替换:

  1. `dirname $0`/jmeter -s "$@" 

为:
  1. HOST="-Djava.rmi.server.hostname=[computer_name][computer_domain]  
  2. -Djava.security.policy=`dirname $0`/[policy_file]"  
  3. `dirname $0`/jmeter $HOST -s "$@" 

TAG:

Plight 引用 删除 iseedeadpeople   /   2014-01-27 17:19:07
RMI配置修改
Plight 引用 删除 iseedeadpeople   /   2014-01-16 18:01:38
jmeter -n -t script.jmx -r
jmeter -n -t script.jmx -R server1,server2...
 

评分:0

我来说两句

Open Toolbar