一、工具描述

apache jmeter是100%的java桌面应用程序,它被设计用来加载被测试软件功能特性、度量被测试软件的性能。设计jmeter的初衷是测试web应用, 后来又扩充了其它的功能。jmeter可以完成针对静态资源和动态资源(servlets, perl脚本, java对象, 数据查询s, ftp服务等)的性能测试。 jmeter可以模拟大量的服务器负载、网络负载、软件对象负载,通过不同的加载类型全面测试软件的性能。并且jmeter提供图形化的性能分析。

二、使用环境

JMeter可以运行在solaris, linux, windows (98, nt, 2000,2003). jdk1.4以上。本文章主要介绍使用JMeter测试windows环境的web server 和DB server的环境搭建步骤,以及使用Jmeter进行压力测试的入门。

三、软件下载

JDK1.5 http://java.sun.com/javase/downloads/index.jsp

Apache tomcat 5.5  http://tomcat.apache.org/download-55.cgi

jakarta-jmeter-2.2 http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi

sqljdbc_1.1.1501.101_enu.exe http://www.microsoft.com/downloads/details.aspx?FamilyId=6D483869-816A-44CB-9787-A866235EFC7C&displaylang=en

四、JDK安装

下载jdk-1_5_0_09-nb-5_0-win-ml.exe,这接点击默认安装,一般安装至C:\Program Files\Java目录下。

桌面上选择“我的电脑”(右键),高级, 环境变量, 在“系统变量”--->“新建”, 在变量名中输入:CLASSPATH,变量值中输入:C:\Program Files\Java\jdk1.5.0_09\lib\dt.JAR; C:\Program Files\Java\jdk1.5.0_09\lib\TOOLS.JAR; C:\Program Files\Java\jdk1.5.0_09\BIN;再按“新建”,在变量名中输入:JAVA_HOME,变量中输入:C:\Program Files\Java\jdk1.5.0_09;修改PATH变量,添加%JAVA_HOME%/bin;然后确定即可;

五、Apache tomcat安装

下载apache-tomcat-5.5.20.exe直接点击按照默认路径安装,一般安装在C:\Program Files\Apache Software Foundation\Tomcat 5.5路径下即可。

六、Jmeter安装

解压 jakarta-jmeter-2.2.zip文件至c盘,本文解压至C:\jakarta-jmeter-2.2目录下。

桌面上选择“我的电 脑”(右键),高级, 环境变量, 在“系统变量”--->“新建”, 在变量名中输入:JMETER_HOME,变量值中输入:C:\jakarta-jmeter-2.2 ,再修改CLASSPATH变量,变量值中添加%JMETER_HOME%\lib\ext \ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-1.2.jar; 然后确定即可。

七、安装SQLJDBC驱动

因为需要测试ms sql 2005,所以需要安装SQLJDBC驱动,可以直接下载sqljdbc_1.1.1501.101_enu.exe,点击可以直接解压到 C:\Program Files目录下,然后修改添加CLASSPATH =C:\Program Files\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.0\enu\sqljdbc.jar,然后确定即可。

一般还需 要将目录下 的C:\Program Files\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.1\enu\auth\x86\sqljdbc_auth.dll拷贝到C:\WINDOWS\system32 ,否则会提示找不到sqljdbc_auth.dll。

另使用JDBC连接MS SQL 2005数据库,需要在数据库安装后设置ICP/IP协议启动,具体如下:

(1)打开SQL Server Configuration Manager;

(2)转到SQL Server 2005 Network Configuration->Protocols for SQLEXPRESS;

(3)将TCP/IP设置为Enabled(启用);

(4)双击TCP/IP项,转到IP Addresses页

(5)IP All中设置TCP Port为1433;

(6)重新启动服务;

如何正确使用 JDBC 驱动程序,可以参见:http://msdn2.microsoft.com/zh-cn/library/ms378526.aspx

至 此,Jmeter测试环境基本安装完成,该环境可以测试web server和DB server(MS SQL2005)。

八、分布式Web server压力测试设置

作为一个纯 java 的gui应用,jmeter 对于cpu和内存的消耗还是很惊人的,所以当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起java内存溢 出的错误。不过,jmeter 也可以像 loadrunner 一样通过使用多台机器运行所谓的 agent 来分担 load generator 自身的压力,并借此来获取更大的并发用户数。根据 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 菜单项。

在具体实施过程中,需 要注意设置好PATH系统环境变量,否则会出现提示找不到rmiregistry.exe,这是RMI注册程序,在JDK的bin目录下。还要注意保证 1099端口没有被禁用。

可以参见:http://www.informit.com/guides/content.asp?g=java&seqNum=274&rl=1

九、JDBC Connection Configuration

在测试DB server性能的时候,正确设置数据库URL和JDBC驱动类,一般如下设置:

Database URL : jdbc:sqlserver://192.166.6.37:1433;databaseName=jia_online;

JDBC Drive class:com.microsoft.sqlserver.jdbc.SQLServerDriver

Username和 password是打开数据库的用户名和密码。

注意:请正确安装SQLJDBC驱动。

Jmeter在windows系统下的安装的更多相关文章

  1. Windows系统下同时安装Python2和Python3

    Windows系统下同时安装Python2和Python3 说明 有时由于工作需求我们需要在Python2版本下面进行一些开发,有时又需要Python3以上的版本,那么我们怎么在一台电脑上同时安装多个 ...

  2. windows系统下fis3安装教程

    注意:在安装fis3前必须安装node和npm,详情请见官网http://nodejs.org node版本要求 0.8.x,0.10.x, 0.12.x,4.x,6.x,不在此列表中的版本不予支持. ...

  3. Windows系统下部署安装一个/多个Tomcat8

    首先从http://tomcat.apache.org/上下载Tomcat8.0压缩版的,解压到指定路径后即可.  第一:在Windows系统中安装部署单个Tomcat         对于这种情况, ...

  4. Windows系统下nodejs安装及配置

    关于nodejs中文站,眼下活跃度最好的知识站应该是http://www.cnodejs.org/ ,而http://cnodejs.org/则活跃度较低.Express.js是nodejs的一个MV ...

  5. Windows 系统下Git安装图解

    简单来说Git是一个免费的.开源的版本控制软件,从功能上讲,跟我们比较熟悉的Subversion(SVN)这类版本控制软件没什么两样.由于工作的需求,需要在WinXP下安装git配合团队完成相应的工作 ...

  6. WIndows系统下mysql-noinstall安装配置

    环境: Windowsmysql-noinstall-5.0.37-win32.zip 一.下载MySQL http://www.mysql.com/downloads 二.安装过程 1.解压缩mys ...

  7. MongoDB在Windows系统下的安装和启动

    版本选择MongoDB的版本命名规范如:x.y.z: y为奇数时表示当前版本为开发版,如:2.3.0.2.1.1: y为偶数时表示当前版本为稳定版,如:2.0.1.2.2.0: 目前官网上最新的版本为 ...

  8. Windows系统下正确安装MongoDB

    1.下载.安装 官网下载: http://www.mongodb.org/downloads 下载好之后,接下来进行安装了: 2.创建数据文件夹 MongoDB将数据文件夹存储在 db 文件夹下. 可 ...

  9. Redis数据库在windows系统下的安装及使用

    1.下载 Redis官方是不支持windows的,但是Microsoft Open Tech group 在 GitHub上开发了一个Win64的版本,下载地址:https://github.com/ ...

随机推荐

  1. pikaqiu练习平台(CSRF(跨站请求伪造) )

    CSRF(跨站请求伪造)   CSRF(跨站请求伪造)概述 Cross-site request forgery 简称为“CSRF”,在CSRF的攻击场景中攻击者会伪造一个请求(这个请求一般是一个链接 ...

  2. 环境配置 | Pycharm远程开发的环境配置

    目的:同局域网中的两台电脑,Mac上看视频学习编程 + 当服务器跑代码:Windows上使用Pycharm写代码.学习远程开发 (当前底子有限,很多操作可能存在理解偏差) Mac上代码存放路径:~/O ...

  3. NOIP做题练习(day5)

    A - 中位数图 题面 题解 先找出题意中的\(b\)所在的位置. 再以这个位置为中心,向右\(for\)一遍有多少个大于/小于该数的数 大于就\(++cs\) 小于就\(--cs\). 因为这个数是 ...

  4. eclipse中spring配置文件的自动提示和namespace的添加

    在用spring或者springmvc框架进行开发时,编辑applicationcontext.xml等配置文件是必不可少的,在eclipse中打开applicationcontext.xml通常是这 ...

  5. [python]Python 字典(Dictionary) update()方法

    update() 函数把字典dict2的键/值对更新到dict里.如果后面的键有重复的会覆盖前面的语法dict.update(dict2) dict = {'Name': 'Zara', 'Age': ...

  6. 001.Django_Model.整理

    Django001_Model.整理 Model表设计 数据定义数据存储,输出 a.定义表(信息 =字段) + 定义表关系 + (定义/限制)数据 b.通过orm等方法来,定义method来编辑原始数 ...

  7. HTML前端入门归纳——样式

    本人一直在从事.net的开发,界面都是采用的WPF,近期花了一个多月进行HTML前端的学习,在这里呢进行学习总结和归纳. 本系列将主要分为4个模块: 控件 样式 布局 JavaScript 根据多年W ...

  8. Mongodb学习笔记(四)管理

    一.数据导出.导入 数据导入:mongoexport ./mongoimport -d 数据库 -c 集合 文件名 数据导出:mongoimport 参数说明: -d:指明使用的库,如text -c: ...

  9. springboot 创建子父工程

    1.创建子父工程 2.添加pom配置文件 2.1  父工程pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" ...

  10. promise封装ajax

    promise的含义(本身不是异步,是封装异步操作的容器,统一异步的标准) promise对象的特点:对象的状态不受外界影响:一旦状态改变,就不会再变,任何时候都可以得到这个结果. function ...