您的位置:软件测试 > 开源软件测试 > 开源性能测试工具 > Jmeter
性能测试之JMeter远程模式
作者:网络转载 发布时间:[ 2016/9/14 13:50:29 ] 推荐标签:性能测试工具 Jmeter

  使用不同的端口号
  默认情况下,JMeter使用标准RMI的端口 1099 。是可以改变的。为了达到这个目的,下面所有的都是执行:
  · 在服务器上,使用新的端口号来启动 rmiregistry
  · 在服务器上,使用服务器定义的端口号来启动 JMeter
  · 在客户端上,更新 remote_hosts 属性包括新的 host:port 设置
  自JMeter2.1.1版本后,JMeter服务端脚本提供支持变更端口。比如,假设你想使用 1664 ( 1099 已被占用)
  在Windows电脑中(命令行)
  C:JMETER>SETSERVER_PORT=1664
  C:JMETER> JMETER-SERVER [other options]
  在Unix电脑中
  $SERVER_PORT=1664jmeter-server [otheroptions]
  [环境变量使用大写字母]
  在上面两种情况下,在特殊的端口使用脚本启动 rmiregistry ,接着通过已经定义的 server_port 属性在服务端启动JMeter。
  可选端口号将会被输出在服务器的 jmeter.log 文件中( rmiregistry 不会创建日志文件)。
  使用不同的测试样例
  在测试计划中,监听器发送他们的结果至默认的JMeter客户端。通过情况下,样例结果将会在生成的时候同时返回。这个将会影响服务器的大吞吐量;样例结果在线程继续时必须返回所有的结果。有一些JMeter属性可以改变这个功能。
  mode
  样例发送模式-在2.9版本默认采用是 StrippedBatch。这个将会被发送至客户端结点。
  · Standard : 在生成样例后即发送结果
  · Hold : 保存样例至数组中直到运行结束。这个将会使用大量的内存在服务器端,不推荐使用。
  · DiskStore : 存储样例在磁盘文件中( java.io.temp 文件夹下)直到运行结束。JVM退出时,这个文件将会被删除。
  · StrippedDiskStore : 从返回数据中删除成功的数据,并使用 DiskStore 发送
  · Batch : 发送保存的样例当数量( num_sample_threshold )或时间( time_threshold )达到一个阀值,在这个阀点时将同步发送样例。这个值可以在服务器的下列属性中配制:
    · num_sample_threshold : 样例累积数,默认 100
    · time_threshold : 时间值,默认是 60000毫秒 = 60秒
  异步模式的使用,在下面。
  · Statistical : 发送概要样例当数量或时间达到阀值。样例将被归整通过线程组名和样例标签。下面是可以归整的属性:
  elapsed time
  latency
  bytes
  sample count
  error count
  · Stripped : 从返回数据中删除成功的样例
  · StrippedBatch : 从返回数据中删除成功的样例,并使用 Batch 发送
  · Asynch : 样例被临时存储在本地队列中。一个单独的工作线程发送样例。这样不需要测试线程等待结果发送至客户端。然而,如果线程的创建速度比发送速度快,消息队列将会终被填满,样例线程会被堵塞直到样例被从队列中清理完全。这个模式比较适用于平滑的样例测试。消息队列的大小可以在服务器端调节通过JMeter的属性 asynch.batch.queue.size (默认 100 )。
  · StrippedAsynch : 从返回数据中删除成功的样例,并使用 Asynch 发送
  · Custom implementation : 配制模式参数至你的自定义样例类名中。这个必须继承接口 SampleSender 并且有一个独立参数类型为 RemoteSampleListener 的构造方法。
  Stripped`模式会包括`responseData`流,因此一些元素前置`responseData`将能正常工作。
  这不是真正的问题,将会有更有效的方法来增加这个特性。
  下面的属性应用于 Batch 和 Statistical 模式:
  num_sample_threshold设置的样例数(默认为 100 )
  time_threshold设置时间值(默认 60秒 )
  处理节点启动失败
  针对大数量级的测试,有一种情况是部分远程服务会不可用或无法启动。比如,当你使用自动化脚本来定位大量的云机器并使用作为并发机器,一些请求机器也许会失败因为一些云的问题。自JMeter2.13后,有一些新的属性来控制这种行为。
  首先,你应该尝试重试初始化在那些仅是因为延时启动。为了确保重试,你应该设置 client.tries 属性来设置总的尝试次数。默认情况下仅会尝试一次。为了控制重试延迟,设置 client.retries_delay 属性来控制在等待尝试的时间间隔(毫秒)。
  后,你应该继续运行使用这些并发机器测试,并成功初始化且跳过失败的节点。为了使这个可用,设置 client.continue_on_fail=true 属性。

上一页12下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd