jmeter的master远程运行和停止slave
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 端口号 手动停止某个任务
最新文章
- CentOS6部署VNC服务端
- Spring事务传播、隔离等级
- Bundle文件的创建和使用(一)
- HDU 1114 Piggy-Bank (poj1384)
- [百度空间] [原]DLL导出实例化的模板类
- 微软office MIME类型
- python模拟Get请求保存网易歌曲的url
- C++的qsort函数
- Spring boot中自动编译配置
- 网易彩票-我的彩票-设置-cell跳转界面
- KnockOut -- 快速入门
- 【C++】C++未定义行为
- input子系统详解2
- PHP 利用redis 做统计缓存mysql的压力
- [转]Spring事务<;tx:annotation-driven/>;
- Aittit.attilax超级框架&#160;api&#160;规划大全
- P1247 取火柴游戏
- 介绍一下Python中webbrowser的用法?
- Ubuntu下禁用笔记本自带键盘
- bzoj 3206: [Apio2013]道路费用【最小生成树+并查集】
热门文章
- (转)SpringMVC学习(七)——Controller类的方法返回值
- java-基于泛型和反射机制的通用比较器实现
- Comparator.comparing比较排序
- iview table icon dorpdown html页面级别vue组件 #vuez#
- 安装 Zend Studio 报错:0x80070666
- AndroidStudio连不上天天模拟器
- WebSocket 学习笔记
- 使用iframe引入公共模块
- LeetCode(82)Remove Duplicates from Sorted List
- LeetCode(12)Integer to Roman