一、工具描述

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. nuxt导入css样式

    全局导入,适用于所有组件 在nuxt.config.js文件引 css:["~样式path"], 如:css:["~assets/css/main.css"], ...

  2. Systemd 学习

    转:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html 原文链接:https://www.jianshu.com ...

  3. 百炼OJ - 1003 - Hangover

    题目链接 思路 求一个数列的前n项和(1/2, 1/3, ...., 1/n)大于所给数所需的项数. #include<stdio.h> int main() { float a; whi ...

  4. 一段讯飞、百度等语音识别API无法识别的语音最终解决办法

    最近在做语音识别.字幕扒词相关的工作,遇到了一段录音(https://download.csdn.net/download/u014220286/12169183,各位有兴趣的可以下载下来试试),音质 ...

  5. MySQL执行外部sql脚本文件的命令

    sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为“sql脚本文件”),然后通过相关的命令执行这个sql脚本文件.基本步骤如下:1.创建包含sql命 ...

  6. 主席树板子 p2104

    #include<cstdio> #include<algorithm> #include<vector> using namespace std; ; int n ...

  7. 09day vi命令详解

    vi有三种模式(互相切换) 1. 命令模式 2. 插入模式(编辑模式) 3. 低行模式 三种模式的切换方法: 使用技巧 vi 文件信息 i --- 进入编辑模式 esc --- 退出编辑模式 :wq ...

  8. it兼职以及行业门户网

    程序员接私活的七大平台 https://www.jianshu.com/p/61a3fabe75fc 1.程序员客栈:程序员的经纪人 https://www.proginn.com/     2.快码 ...

  9. React的React.createElement源码解析(一)

    一.什么是jsx  jsx是语法糖  它是js和html的组合使用  二.为什么用jsx语法 高效定义模版,编译后使用 不会带来性能问题 三.jsx语法转化为js语法  jsx语法通过babel转化为 ...

  10. yii2自定义报错页面

    在Yii2版本的advanced高级模板环境中:设置404自定义页面的方法 1.config/main.php文件 'errorHandler' => [ 'errorAction' => ...