性能测试--Jmeter的Non GUI模式、集群
Jmeter的Non GUI模式、集群
一、Non GUI模式
1、一般情况下在NonGUI模式下运行jmeter,有两个好处:
- 节省系统资源,能够产生更大的负载
- 可以通过命令行参数对测试场景进行更精细的配置
2、示例:
使用上一篇博文中smile task的查看所有task的脚本作为例子演示non gui模式
jmeter -n -t scripts/c7/all_tasks.jmx -l scripts/c7/all_tasks_res.jtl -e -o scripts/c7/report
上面这条命令将输入的结果保存为log.jtl,然后在运行结束时,在resport目录下生成dashboard报告。
3、Non GUI模式下参数详解:
- -n 表示使用non-gui模式
- -t [JMX测试脚本的名称].
- -l [保存JTL 测试结果文件的路径].
- -j [JMeter log文件的路径].
- -r 在JMeter的远程机器上运行测试,远程机器由 property " remote_hosts "指定
- -R [远程机器列表] 在指定的远程机器上运行测试
- -g [CSV 文件路径] 通过csv文件来创建dashboard报告
- -e 运行结束后创建dashboard报告
- -o 在哪个目录创建dashboard报告,该目录必须为空或者不存在
代理相关的选项
- -H [代理服务器的名称或ip]
- -P [代理服务器端口]
二、jmeter集群
Jmeter的集群模式可以将多台机器联合起来一起产生负载,从而弥补单台机器负载生成能力不足的问题。在集群模式下,最少需要两台机器(一台client: 大脑,用于控制其他执行机的机器,此机器不产生负载压力,一台server: 真正执行test plan,产生负载压力的机器)
1、第一步,开启server:
JMETER_HOME/bin/jmeter-server (unix)
JMETER_HOME/bin/jmeter-server.bat
2、第二步,将server的ip添加到client的Properties文件:
编辑JMETER_HOME/bin/jmeter.properties文件,找到remote_hosts项,将server的ip配置到这一项,有几台server就写几个ip,用逗号分隔。
也可以在命令行中配置server ip:
jmeter -R host1,127.0.0.1,host2
3、第三步,打开jmeter gui检查配置:
此时Run菜单下会出现"Remote Start" and "Remote Stop"菜单,如下图所示:

4、第四步,使用none gui模式进行集群测试:
GUI模式只能用于调试,不能用于正式的产生负载,在集群模式下也是这样。
在client机器上使用下面的命令运行测试:
jmeter -n -t script.jmx -r
or
jmeter -n -t script.jmx -R server1,server2,…
- -Gproperty=value: 在所有的server上配置属性,可以配置多次
- -X: 测试结束后关闭servers
更多资料:
三、jmeter官方文档里给出了下面的减少资源使用的建议:
- 使用无GUI的模式:
jmeter -n -t test.jmx -l test.jtl - 尽量少使用监听器Listener;如果使用上面的-l标记,他们均可以被删除或禁用
- 在压力测试过程中,不要使用查看结果树或在Table中查看结果监听器,仅在脚本调试阶段使用即可
- 相比使用大量相似的样例,在一个循环中使用相同的样例,并使用变量(CSV DataSet)来实现样例的不同。[Include Controller在此步骤没有任何用,它在文件中添加所有的测试元素至测试计划中]
- 不要使用功能模式
- 使用CSV格式输出要优于XML
- 仅保存需要的数据
- 尽可能使用少的断言
- 使用最优的脚本语言(查看JSR223部分)
性能测试--Jmeter的Non GUI模式、集群的更多相关文章
- Jmeter之非GUI模式(命令行)执行
在使用Jmeter进行性能测试时,建议使用非GUI模式执行. 命令行启动 1.进入jmeter安装的bin目录 2.执行Jmeter命令 如下: (1.jmeter.bat -n -t E:\apac ...
- Nodejs【单机】多进程模式集群
Nodejs[单机]多进程模式集群实例: 1.安装:npm install -s cluster 2.服务代码: var debug = require('debug'); var express = ...
- Zookeeper 部署Zookeeper仲裁模式集群
部署Zookeeper仲裁模式集群 本例在一台服务器上部署3个zk服务:z1.z2.z3. 1.下载Zookeeper https://zookeeper.apache.org/ 2.解压缩 .tar ...
- RabbitMQ 3.9.7 镜像模式集群的搭建
1. 概述 老话说的好:做人脚踏实地,一步一个脚印,便定能战胜一切困难,最终取得成功!!! 言归正传,之前我们聊了 RabbitMQ 单点服务的安装,今天我们来聊聊 RabbitMQ 3.9.7 镜像 ...
- RabbitMQ 3.9.7 镜像模式集群与Springboot 2.5.5 整合
1. 概述 老话说的好:做人要懂得变通,善于思考,有时稍微转个弯,也许问题就解决了. 言归正传,之前我们聊了 RabbitMQ 3.9.7 镜像模式集群的搭建,今天我们来聊聊 RabbitMQ 3.9 ...
- Redis sentinel 哨兵模式集群方案配置
第一个方案是创建 redis cluster,第二种方案就是用哨兵模式来进行主从替换以及故障恢复.兵模式集群方案配置 一.sentinel介绍 Sentinel作用: 1):Master状态检测 2) ...
- mongodb生产环境(副本集模式)集群搭建配置
mongodb副本集模式由如下几部分组成: 1.路由实例mongos 2.配置实例configsvr 3.副本集集群replset(一主多从) tips: 1.以上实例都是mongod守护进程 2.以 ...
- Jmeter(非GUI模式)教程
前言 使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源.优点如下:1.节约系统资源:无需启动界面,节约系统资源 2.便捷快速:仅需启动命令行,输入命令便可执行 ...
- redis sentinel哨兵模式集群搭建教程
1.环境说明 我们将使用192.168.220.128.192.168.220.129两台机器搭建sentinel交叉主从为例 当前我们已在192.168.220.128上按redis安装教程安装了r ...
随机推荐
- 10.1综合强化刷题 Day2 afternoon
最大值(max) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK有一本书,上面有很多有趣的OI问题.今天LYK看到了这么一道题目: 这里有一个长度为n的 ...
- cdq分治解决区间问题
如题,已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N.M,分别表示该数列数字的个数和操作的总个数. 第二行包含 ...
- linux查看hostname以及修改hostname
查看hostname : hostname 修改hostname : hostnamectl set-hostname master (比如要修改为master) 修改完重启生效 : ...
- 各语言最原始数据库访问组件封装DBHelper
源码:https://github.com/easonjim/DBHelper bug提交:https://github.com/easonjim/DBHelper/issues 每个语言放在不同的分 ...
- ASIHTTPRequest实现断点续传
http://blog.csdn.net/daiyelang/article/category/1377418 ASIHTTPRequest可以实现断点续传.网上有一些介绍类似使用: [reque ...
- Using Find_Alert and Show_Alert in Oracle Forms
Show_alert is used to display model window messages in Oracle Forms and Find_alert searches the list ...
- ORACLE中SID和SERVICE_NAME的区别
先来讲一个小故事,2015年6月份,有个客户迁移了数据库,由单实例数据库变成了RAC.JAVA应用程序出现了无法连接数据库的情况,但是PL/SQL能连接上数据库.由于项目比较庞大,虽然在半夜切换的 ...
- 【2048小游戏】——CSS/原生js爬坑之纯CSS模态对话框&游戏结束
引言:2048小游戏的结束界面,使用纯CSS制作模态对话框,一般做模态对话框都会使用BootStrap自带的模态对话框组件方便使用,但在制作要运行在移动端的小项目时,就不能使用BootStrap,因为 ...
- unity3D中使用Socket进行数据通信(一)
公司今年3D产品的工作中心主要集中在提高产品深度上,通过对竞争产品的分析,发现我们的缺陷在于多人在线与后台管理部分,多人在线使用unity自带的Network能够搞定,后台部分前段时间主要研究了下Sq ...
- 应该知道的Linux技巧(转载)
这篇文章来源于Quroa的一个问答<What are some time-saving tips that every Linux user should know?>—— Linux用户 ...