Jmeter分布式部署实例(一)

作者: 粥一样温柔 | 来源:发表于2018-05-31 20:21 被阅读9次

性能测试过程中,常常要求并发数达到一个比较大的值(例如1000+)。当单机配置的CPU与内存等资源无法支撑,就需要部署Jmeter的分布式测试环境。

例如:单接口并发500,持续1min Jmeter报OutOfMemoryError

一般什么情况下需要分布式(原文链接:https://www.cnblogs.com/ranxf/p/6656457.html)

   1.比如机器i5双核的cpu,8g的内存。压测一个简单的接口,可以支持500+的并发。(但是如果压测方案逻辑复杂,比如在jmeter里面加了很多控制器,监听器,这些都是很耗机器性能,这时候可能连100并发都压不上去)

   2. 压测过程中如果Jmeter未响应,卡住,反应慢,随即启动任务管理器,如果cup和内存特别大时,则说明单机扛不住了,则要使用分布式了

   3. 随着并发的增大,TPS不会增长,即出现瓶颈(排除服务器瓶颈及其他),可能是本测试机找不住了,则要分布式

Jmeter分布式操作步骤:

   1.Jmeter分布式测试时,选择其中一台作为Master,其它机器做为Slave(例如本文中有两台slave,分别为10.92.0.75和10.92.0.74)。

   2.执行时,通过Master,运行所有Slave上的jmeter-server文件。

   3.在Master的Jmeter文件的bin目录下找到Jmeter.properties,并且修改文件中的“remote_hosts”。

“remote_hosts=127.0.0.1”改为““remote_hosts=10.92.0.75:1099,10.92.0.74:1099”

有多台slave时,主机用英文的逗号“,”连接

3.启动Controller上的jmeter,选择运行>远程启动下的10.92.0.75:1099和10.92.0.74:1099


下面,我们开始进行实例的讲解:(windows上的master控制2台Linux环境的slave)

首先,我们在Master和slave上安装java环境和jmeter。

注意:master和slave机中的jmeter版本必须一致(小版本也得一致)

JRE的版本也需要一致,不能一个java7一个java8(只要大版本一致即可)

Jmeter的安装

去Jmeter官网(http://jmeter.apache.org/download_jmeter.cgi)下载安装包以及其源码,如下面为其对应windows系统的包: 

apache-jmeter-3.0.tgz(Linux环境安装包)

apache-jmeter-3.0.zip(Windows环境安装包)

解压即可。

Linux环境解压命令:tar xzvf apache-jmeter-3.3.tgz

解压成功

Jmeter的环境变量配置

Windows环境Jmeter的运行需要依赖JDK环境,所以需要安装jdk和配置环境变量。

去Oracle官网(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)下载jdk;

下载后正常安装即可。

环境变量的配置:

我的电脑>属性>高级系统设置>高级>环境变量>系统变量

新增变量名:JAVA_HOME;变量值:jdk的安装目录

编辑path,将jdk安装目录下的/bin文件复制过去“C:\Program Files x86)\Java\jdk1.8.0_131\bin; ”

Linux环境更简单,下载安装和配置jdk:输入命令yum install java-1.8.0-openjdk* -y


java -version确认安装成功

更改Jmeter配置


进入Jmeter目录: cd apache-jmeter-3.3/cd bin/

ls命令:这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到ls -l这个指令(简写是ll)

编辑jmeter.properties文件:vi jmeter.properties

查找remote_host在文件中的位置:输入命令/remote_hosts

/remote_hosts

输入a,进入编辑状态,修改ip为master机的ip,加端口1099

退出和保存:esc+:wq!

启动Slave上的jmeter:输入命令./jmeter-server

相关文章

  • Jmeter分布式部署实例(一)

    性能测试过程中,常常要求并发数达到一个比较大的值(例如1000+)。当单机配置的CPU与内存等资源无法支撑,就需要...

  • Jmeter 分布式

    Jmeter 分布式部署 组网 环境配置 运行

  • Jmeter分布式部署

    Jmeter分布式部署 在使用Jmeter进行接口的性能测试时,由于Jmeter是JAVA应用,对于CPU和内存的...

  • Jmeter分布式部署

    背景介绍:Master在本机中(Windows),易于编辑;Node在服务器虚机中,易于扩展。 Jmeter在做性...

  • jmeter分布式部署

    服务器分配ip: 说明,以下个人ip,为了便于说明部署的方式 基本命令介绍: 文件移动命令: 修改配置文件 查看系...

  • 分布式锁实现

    在多实例部署中,当我们需要对实例间作并发控制,那么就涉及分布式锁问题,我们常用的分布式锁实现有基于 Redis /...

  • mac环境下 Dockerfile部署jmeter分布式环境

    背景 闲来无事重新又把使用Dockerfile部署jmeter分布式的知识回顾了一下,回头重新整理下使用docke...

  • Jmeter分布式

    jmeter分布式 参考文章: Jmeter分布式压力测试:https://blog.csdn.net/liaom...

  • 使用redis实现分布式锁实践

    分布式锁在多实例部署,分布式系统中经常会使用到,这是因为基于jvm的锁无法满足多实例中锁的需求,本篇将讲下redi...

  • jenkins+ant+jmeter实现自动化集成 for ma

    一、jmeter安装二、ant运行 jmeter脚本配置三、jenkins部署 一、jmeter今天来学习jmet...

网友评论

    本文标题:Jmeter分布式部署实例(一)

    本文链接:https://www.haomeiwen.com/subject/yhccsftx.html