使用 JMeter 分布式性能测试

认识Jmeter

1. 前言
JMeter是Apache组织的开放源代码项目,是一个100%纯Java桌面应用,主要用于压力测试和性能测量。它最初被设计用于Web应用测试但后来扩展到其它测试领域。

现在网络上的资料主要介绍了用Jmeter怎么做性能测试,主要方法是利用Jmeter模拟大量的服务器负载、网络负载、软件对象负载,在不同压力类别下测试软件的强度,然后使用JMeter提供的图形化界面,分析性能指标或者在高负载情况下被测试的服务器/脚本/对象的性能以及软件的整体性能。
利用JMete也可以做web的功能测试,主要是将客户端提交的请求通过jmeter的http请求向服务器发送请求,然后查看返回结果,如果http发送成功,服务器会做出相应,并且将请求数据存储。
本文主要介绍如何使用JMeter,从熟悉Jmeter的开始,逐步讲解Jmeter的各个部分,已经如何用jmeter做性能和功能测试,因为对jmeter使用不是完全熟悉,对有些内容不理解的,当作待解决问题。



2 安装Jmeter



官方网址:http://jakarta.apache.org/jmeter/在这里,可以查看Jmeter的相关资料。
下载地址:http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
Jmeter的最新版本是2.3.1,下载页面有两种类型的下载包,如果是使用,则选择Binary,然后选择zip格式的下载包进行下载。Jmeter不需要安装,所以,解压的时候选择好你要解压的地址就可以。

运行Jmeter程序需要先安装JDK(1.4以上),如果你的电脑上没有安装JDK,要先安装JDD,把JDK文件安装到C盘的\Program Files\Java目录下面。安装完JDK后,需要配置环境变量。具体的环境配置方法请参考网络相关的资料。
安装好JDK后,在命令行中输入javac,如果返回一些信息内容,则表示jdk安装成功,则可以运行Jmeter程序,具体方法如下:

假如将下载的.zip文件解压缩到D:/JMeter目录下。进入Jmeter的解压目录,点击D:/JMeter/bin下面的jmeter.bat批处理文件来启动JMeter的可视化界面,如下图所示:


启动Jmeter后,在Jmete界面上,会有测试计划和工作台两个菜单,测试计划描述了执行测试过程中JMeter的执行过程和步骤,一个完整的测试计划包括一个或者多个线程组(Thread Groups)、逻辑控制器(Logic Controller)、配置元件(Sample Generating Controllers)、监听器(Listener)、定时器(Timer)、断言(Assertions)、配置元素(Config Elements)。打开JMeter时,它已经建立一个默认的测试计划,一个JMeter应用的实例只能建立或者打开一个测试计划。而工作台主要是用来录制脚本的,在录制脚本的时候,通过工作台设置HTTP代理服务器。







利用JMeter进行负载测试的时候,使用单台机器模拟测试超过1000个行程的并发就有些力不从心,在执行的过程中,JMeter自身会自动关闭,要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 Agent 来分担 JMeter自身的压力,并借此来获取更大的并发用户数,但是需要进行相关的一些修改,具体如下:

1. 在所有期望运行 JMeter 作为 Load Generator 的机器上安装 JMeter,并确定其中一台机器作为 Controller,其他的机器作为 Agent。然后运行所有 Agent 机器上的JMeter-server.bat文件——假定我们使用两台机器 192.168.0.1 和 192.168.0.2 作为 Agent;

2. 在Controller 机器的 JMeter 安装目录下找到 bin 目录,再找到 JMeter.properties 这个文件,使用记事本或者其他文字编辑工具打开它;

3. 在打开的文件中查找“remote_hosts=”这个字符串,你可以找到这样一行“remote_hosts=127.0.0.1”。其中的 127.0..0.1 表示运行 JMeter Agent 的机器,这里需要修改为“remote_hosts=192.168.0.1:1099,192.168.0.2:1099”——其中的 1099 为 JMeter 的 Controller 和 Agent 之间进行通讯的默认 RMI 端口号;

4. 保存文件,并重新启动 Controller 机器上的 JMeter.bat,并进入 Run -> Remote Start 菜单项,在这里可以看到远程启动菜单下面有192.168.0.1 ,192.168.0.1两个IP地址

5 如果要让某个电脑执行,可以点击改电脑的IP地址就可以,如果两个都要执行,可以点击Run 菜单下的“远程运行全部”菜单

6 有时候用作代理的机器太少,仍不能满足需要,则需要将作为Controller的电脑也当作Agent,则同样需要修改JMeter.properties文件,将Controller的IP地址写入。同时,这个时候,需要打先打开Controller 电脑中JMeter下bin目录下的jmeter-server.bat,然后再打开JMeter.bat,此时,进入Run -> Remote Start菜单,可以看到Controller也作为远程机器进行运行。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值