在哪里为客户端jmeter指定-Djava.rmi.server.hostname

时间:2016-05-22 22:46:32

标签: jmeter load-testing

对于使用jmeter的分布式负载测试,我们需要在启动jmeter之前指定Djava.rmi.server.hostname。对于服务器启动,我们可以在jmeter-server文件中取消注释#RMI_HOST_DEF = -Djava.rmi.server.hostname = xxx.xxx.xxx.xxx文件。

但是要启动客户端,我们必须运行jmeter.bat。对于分布式测试,我一直使用命令行来运行jmeter.bat文件,如下所示:

    apache-jmeter-3.0/bin/./jmeter.bat -Djava.rmi.server.hostname=127.0.0.1

所以,是否有一个文件,我可以像我们为jmeter-server那样包含这个Djava.rmi.server.hostname,它将指定rmi主机名是127.0.0.1?

我查看了jmeter.bat文件和jmeter文件。我无法找到任何东西。不过,我想指定Djava.rmi.server.hostname = 127.0.0.1,以便我不必运行上面突出显示的命令行。

非常欣赏。 此致

3 个答案:

答案 0 :(得分:2)

您的客户端似乎在 Windows 中运行,服务器(从属)正在Linux中运行。否则无需配置#RMI_HOST_DEF = -Djava.rmi.server.hostname = xxx.xxx.xxx.xxx 如果服务器和客户端都在Windows环境中运行。

但是,在您的情况下,您必须将#RMI_HOST_DEF = -Djava.rmi.server.hostname = xxx.xxx.xxx.xxx 配置为

RMI_HOST_DEF=-Djava.rmi.server.hostname=localhost

RMI_HOST_DEF=-Djava.rmi.server.hostname=<ip of jmeter server>

这样做是为了启动 Slave 计算机与客户端计算机进行通信。它将动态分配侦听端口以便从客户端进行侦听。

您必须定义将以下内容添加到客户端(主)jmeter.properties 文件中:

remote_hosts= xxx.xxx.xxx.xxx(你的奴隶机器ip)

然后从客户端计算机

运行

./jmeter.bat -n -t <JMX file name> -r

要在 Linux环境中执行远程测试,您可以在此问题中找到帮助 JMeter: Distributed (Remote) Testing in Linux Environment

答案 1 :(得分:0)

在JVM中设置导出远程对象。通常这是服务器,但如果它导出回调,它可以是客户端。

在JMeter和您的系统的特定情况下,这意味着什么,我不能说。

通常没有必要设置它,除非存在DNS问题或多宿主主机。所以我想知道为什么在你的情况下它被认为是必要的。

您无法设置文件。

答案 2 :(得分:0)

您过去通过的属性&#39; -D&#39;命令行参数也可以通过 system.properties 文件(位于JMeter安装的&#34; bin&#34;文件夹中)以name=value形式设置,如:

java.rmi.server.hostname=127.0.0.1

您可以使用Debug SamplerView Results Tree侦听器组合仔细检查系统属性值。

请参阅Apache JMeter Properties Customization Guide以了解有关不同JMeter属性类型以及设置和/或覆盖它们的方法的更多信息。