jmeter可以部署成master-slave或者叫client-server模式,一个master(client)可以同时控制多个slave(server)。

  在linux系统下,master(client)每开启一组slave(server)进行压测,就会在Linux下开启三个进程,如下图所示,java外的两个进程是守护进程,当java进程被kill,其他两个进程跟着殉葬

  同时会开启udp端口(比如下图的4445、4446),监听系统发出的指令(比如结束指令)

  问:当master(client)开启多组任务,比如user1使用master1连接slave1和slave2、user2使用master1连接的slave3和slave4进行压测的场景,如何向master1分别发送结束指令呢?

  答:使用jmeter自带的stoptest.sh和shutdown.sh脚本来结束。区分不同的用户user,使用参数端口。因为每组任务都会单独起一个端口,进行监听,接收系统本地127.0.0.1发出的结束指令。

  jmeter.properties里关于端口的配置,如图,默认从4445开始找一个不在使用的端口,直到端口4455为止,因此,默认可以起10个任务,当然这样看master的硬件配置,是否有足够的性能同时满足这么多任务的运行。

  再来看下stoptest.sh和shutdown.sh脚本的内容,很简单:去github上查看jmeter的源码,可以得知package org.apache.jmeter.util下存在ShutdownClient这个类,有main函数。因此可以直接java -cp的方式使用,然后这个类,接收两个参数,第二个参数就是“端口”

stoptest.sh

#   Run the Shutdown client to stop a non-GUI instance abruptly

#   P1 = command port for JMeter instance (defaults to )

DIRNAME=`dirname $`

java -cp ${DIRNAME}/ApacheJMeter.jar org.apache.jmeter.util.ShutdownClient StopTestNow "$@"

shutdown.sh

#   Run the Shutdown client to stop a non-GUI instance gracefully

#   P1 = command port for JMeter instance (defaults to )

DIRNAME=`dirname $`

java -cp ${DIRNAME}/ApacheJMeter.jar org.apache.jmeter.util.ShutdownClient ShutdownClient "$@"

至此,一个master开启多组任务;对各个任务进行分别停止;两个事情搞定。

1、sh jmeter.sh -n -t a.jmx -l b.jtl -j c.log -e -o report1 后台开启任务,任务自然结束或者手动停止后生成报告

2、sh stoptest.sh 端口号 手动停止某个任务

最新文章

  1. CentOS6部署VNC服务端
  2. Spring事务传播、隔离等级
  3. Bundle文件的创建和使用(一)
  4. HDU 1114 Piggy-Bank (poj1384)
  5. [百度空间] [原]DLL导出实例化的模板类
  6. 微软office MIME类型
  7. python模拟Get请求保存网易歌曲的url
  8. C++的qsort函数
  9. Spring boot中自动编译配置
  10. 网易彩票-我的彩票-设置-cell跳转界面
  11. KnockOut -- 快速入门
  12. 【C++】C++未定义行为
  13. input子系统详解2
  14. PHP 利用redis 做统计缓存mysql的压力
  15. [转]Spring事务<tx:annotation-driven/>
  16. Aittit.attilax超级框架 api 规划大全
  17. P1247 取火柴游戏
  18. 介绍一下Python中webbrowser的用法?
  19. Ubuntu下禁用笔记本自带键盘
  20. bzoj 3206: [Apio2013]道路费用【最小生成树+并查集】

热门文章

  1. (转)SpringMVC学习(七)——Controller类的方法返回值
  2. java-基于泛型和反射机制的通用比较器实现
  3. Comparator.comparing比较排序
  4. iview table icon dorpdown html页面级别vue组件 #vuez#
  5. 安装 Zend Studio 报错:0x80070666
  6. AndroidStudio连不上天天模拟器
  7. WebSocket 学习笔记
  8. 使用iframe引入公共模块
  9. LeetCode(82)Remove Duplicates from Sorted List
  10. LeetCode(12)Integer to Roman