一、Jmeter4.0分布式压测准备工作

压测注意事项
            the firewalls on the systems are turned off or correct ports are opened.
            系统上的防火墙被关闭或正确的端口被打开。

all the clients are on the same subnet.
            所有的客户端都在同一个子网上。

the server is in the same subnet, if 192.x.x.x or 10.x.x.x IP addresses are used. If the server doesn't use 192.xx or 10.xx IP address, there shouldn't be any problems.
            如果使用192.x.x.x或10.x.x.x IP地址,则服务器位于同一子网中。 如果服务器不使用192.xx或10.xx IP地址,则不应该有任何问题。

Make sure JMeter can access the server.
            确保JMeter可以访问服务器。

Make sure you use the same version of JMeter and Java on all the systems. Mixing versions will not work correctly.
            确保在所有系统上使用相同版本的JMeter和Java。 混合版本将无法正常工作。

You have setup SSL for RMI or disabled it.
            您已为RMI设置SSL或将其禁用。

官网地址 http://jmeter.apache.org/usermanual/jmeter_distributed_testing_step_by_step.html

压测注意事项:一定要用内网IP,不用用公网IP,用ping去检查

二、压测结构图

master:司令
            slave:奴隶
            target:目标

三、安装jdk

将jdk安装包放置到java文件下,进行解压

# mkdir /usr/java

# unzip jdk-10.0.2.zip

jdk地址:链接:https://pan.baidu.com/s/1PZKrrHDSmrnwkSfEbQk4kQ   提取码:6dzx

设置环境变量,添加下列信息到尾部

# vi /etc/profile

#set java enviroment
JAVA_HOME=/usr/java/jdk-10.0.2
JRE_HOME=/usr/java/jdk-10.0.2/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

让变量生效

# source /etc/profile

加权限验证

# cd /usr/java/

# chmod -R 775 *

# java -version

四、安装jmeter

新建文件夹

# mkdir /software

将jmeter压缩包上传到目录,进行解压。安装完成

jmeter压缩包地址:链接:https://pan.baidu.com/s/1VlqvoDXLuKVlJ2Qhr5B5zA       提取码:52eu

# tar -zxvf apache-jmeter-4.0.tgz

五、单机压测

新建文件夹

# cd /software

# mkdir jtl script

引入jmx文件,到script目录

# cd /software/script

进入到bin目录,进行压测

# ./jmeter -n -t /software/script/html.jmx -l /software/jtl/result.jtl

非GUI界面,压测参数讲解
             -h 帮助
            -n 非GUI模式
            -t 指定要运行的 JMeter 测试脚本文件
            -l 记录结果的文件 每次运行之前,(要确保之前没有运行过,即xxx.jtl不存在,不然报错)
            -r Jmter.properties文件中指定的所有远程服务器
            -e 在脚本运行结束后生成html报告
            -o 用于存放html报告的目录(目录要为空,不然报错)

/software/script/html.jmx 脚本存放位置

/software/jtl/result.jtl 压测结果存放位置

五、分布式压测

准备三台主机

192.168.96.168    master控制机

192.168.96.169    salve奴隶机

192.168.96.170    salve奴隶机

master机器配置

# vi /software/apache-jmeter-4.0/bin/jmeter.properties

./jmeter -n -t /software/script/html.jmx -R 192.168.96.169:1099 -l /software/jtl/result.jtl

./jmeter -n -t /software/script/html.jmx -R 192.168.96.169:1099 -l /software/jtl/result.jtl -e -o /software/html

JMeter——分布式压测的更多相关文章

  1. jmeter 分布式压测(windows)

    单台压测机通常会遇到客户端瓶颈,受制于客户机的性能.可能由于网络带宽,CPU,内存的限制不能给到服务器足够的压力,这个时候你就需要用到分布式方案来解决客户机的瓶颈,压测的结果也会更加接近于真实情况. ...

  2. 压力测试(八)-多节点JMeter分布式压测实战

    1.Jmeter4.0分布式压测准备工作 简介:讲解Linux服务器上jmeter进行分布式压测的相关准备工作 1.压测注意事项 the firewalls on the systems are tu ...

  3. JMeter分布式压测实战(2020年清明假期学习笔记)

    一.常用压力测试工具对比 简介:目前用的常用测试工具对比 1.loadrunner 性能稳定,压测结果及颗粒度大,可以自定义脚本进行压测,但是太过于重大,功能比较繁多. 2.Apache ab(单接口 ...

  4. jmeter分布式压测对master、slave防火墙配置

    首先要了解jmeter分布式压测的基础概念:master为统计结果的服务器,slave为各台压力机,如下图所示 一.结论 针对master 1.修改jmeter.properties的client.r ...

  5. jmeter分布式压测

    stop.sh需要跑Jmeter的服务器上安装Jmeteryum install lrzsz 安装rz.sz命令rz jemter的压缩包 拷贝到/usr/local/tools下面unzip apa ...

  6. jmeter 分布式压测(Linux)

    之前一篇博文写的是如何在Linux上使用jmeter压测,这篇介绍下Linux上jmeter的分布式压测. 和windows上的分布式类似,需要配置agent节点和控制机 一.Agent节点配置 1. ...

  7. Jmeter分布式压测实战及踩坑处理(含参数化)

    项目中使用Jmeter进行大并发压测时,单机受限内存.CPU.网络IO,会出现服务器压力还没有上 去,但压测服务器由于模拟的压力太大死机的情况.JMeter的集群模式可以让我们将多台机器联合起来 一起 ...

  8. jmeter分布式压测原理简介1

    1.什么叫分布式压测? 分布式压测:模拟多台机器向目标机器产生压力,模拟几万用户并发访问 2.分布式压测原理:如下 3.更多补充.....待添加

  9. jmeter分布式压测 java.io.FileNotFoundException: rmi_keystore.jks (系统找不到指定的文件。)

    解决办法:1.控制机和代理机:修改jmeter.properties中server.rmi.ssl.disable=true 不启动SSL2.控制机和代理机: Slave(从压力机)启动jmeter- ...

随机推荐

  1. git 回滚到某个版本

    首先使用git log 显示最近的代码提交记录 commit后面的内容,就是回滚的记录名 增加了加载条显示,提高用户体验 commit 47f45668e72e4deeccae85e9767c250d ...

  2. Java中getBytes()方法--使用详解

    getBytes()方法详解 在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组.这表示在不同的操作系统下,返回的东西不一样! 1. str.getByte ...

  3. Java8 API学习2 - java.lang.CharSequence, java.lang.String

    CharSequence public interface CharSequence 字符序列接口, 实现此接口的非抽象类有String, StringBuffer, StringBuilder. 从 ...

  4. 给培训学校讲解ORM框架的课件

    导读:这是我给某培训学校培训.net程序员所设计的课件,他们普遍反映太难了,是这样吗?

  5. vue依赖

    ajax:vue-resource moke数据:body-parser

  6. 设计模式3——单例模式Singleton

    参考链接: 单例模式-菜鸟教程:https://www.runoob.com/design-pattern/singleton-pattern.html 这种类型的设计模式属于创建型模式,它提供了一种 ...

  7. C语言中的优先级和类型转换分析

    一.优先级 1.易错的优先级 二.类型转换 在C语言中,存在强制类型装换,也存在隐式类型转换,隐式类型转换实际上属于强制类型转换,隐式类型转换要点如图. (1)举例:算术运算式中,低类型转换为高类型 ...

  8. vue学习笔记(二)vue的生命周期和钩子函数

    前言 通过上一章的学习,我们已经初步的了解了vue到底是什么东西,可以干什么,而这一篇博客主要介绍vue的生命周期和它常用的钩子函数,如果有学过java的园友可能有接触到在学习servlet的时候学过 ...

  9. 记springboot + MP +Hikari动态数据源配置

    环境准备: springboot 2.1.6 mybatis-plus 数据库驱动 boot 自带hikari驱动 步骤1:  导入多数据源启动工具类 <!-- 多数据源支持 -->< ...

  10. Java动态代理 ----- jdk代理与cglib代理

    1.jdk代理 针对接口进行代理,接口可以没有方法, InvocationHandler会拦截所有方法,不过好像意义不大....只能执行Object类的方法,执行结果有点奇怪... package t ...