一 环境配置
1.1 java环境的安装和 jmeter常用组件
1.2jmeter 环境配置
1.2.1 JMETER_HOME在高级环境变量进行命名配置
1.2.2 在classpath进行引用
%JMETER_HOME%\lib\jorphan.jar; %JMETER_HOME%\lib/logkit-2.0.jar;
1.2.3 验证是否安装成功
在cmd黑窗口进输入jmeter进行启动
二,资源准备
2.1本次所需插件:
可通过该网址下载jmeter所有插件
http://jmeter-plugins.org/downloads/all/
http://www.51testing.com/html/15/n-3726415.html
-
JMeterPlugins-Extras.jar
-
JMeter之ServerAgent监控资源
-
JMeterPlugins-Standard.jar
-
ServerAgent-2.2.1
将JMeterPlugins-Extras.jar和JMeterPlugins-Standard.jar放到apache-jmeter-3.0\lib\ext目录下
2.2 对linux 资源准备
将ServerAgent-2.2.1放到linux服务器opt目录下
-
ServerAgent服务端口号默认为4444,需要设置防火墙对此端口不拦截:开放Linux的对外访问的端口4444
/sbZin/iptables -I INPUT -p tcp --dport 4444 -j ACCEPTZ /etc/rc.d/init.d/iptables save ---将修改永久保存到防火墙中 vi /etc/sysconfig/iptables 在端口22下面添加 iptables -I INPUT -p tcp --dport 4444 -j ACCEP/允许4444端口访问)
-
然后在服务器中启动监控服务:
2.3 对windows资源准备
将JMeterPlugins-Extras.jar和JMeterPlugins-Standard.jar放到apache-jmeter-3.0\lib\ext目录下
先在服务器上开启server的监听
三 ,jmeter压测数据库基本操作
3.1,双击serverAgent.bat启动
3.2 创建一个分布式线程组并进行配置→创建监听器里的结果树和聚合报告
3.3 创建一个监听器PerfMon Metrics Collecto监听cpu和内存
配置PerfMon Metrics Collector监听器 host 是本地ip地址需要连接监听
3.4 创建一个JDBC Connection Configuration元件→配置池变量名
连接绑定数据库
- JDBC Request的池的变量名相同,实现关联、最大连接数、连接mysql的参数等
-
Variable Name:连接池名称。
-
JDBC Request会通过此名称来获取连接池的配置,名称可以随意填写,但 是最好具体实际的业务意义,方便理解和记忆。
-
其他的可以默认,可以根据实际情况来调节优化性能。
-
Database URL:数据链接url, 格式:jdbc:mysql://localhost:3306/host
注释:数据库的ip地址+端口/数据库名(查询数据库端口号show global variables like ‘port’)
jdbc:mysql://127.0.0.1:3306/mydb2(数据库库名)?serverTimezone=UTC&allowMultiQueries=true -
JDBC Driver Class:驱动器名称。 固定:com.mysql.jdbc.Driver
-
Username:用户名
-
Passowrd:密码
-
添加一个JDBC Request。
3.5右键线程组【添加】-【Sampler】-【JDBC Request】
这里可以根据压测什么进行选择不同的请求 实例:压测数据库 操作数据库
使用语句进行查询压测本地 cpu 内存使用情况
- Updata Statement:更新语句
支持测试非select语句,并且支持测试多条,若其中夹杂select语句,自动忽略,若第一条语句为select 语句,报错 - Callable Statement:所有语句 只要语法正确,任何语句,再多的条数都能支持 Prepared Select
- Statement:预编译查询语句。(长时间执行效率更高,支持占位符) Prepared Update
- Statement:预编译更新语句。(同上) Commit (立即提交)Rollback(回滚)
以上是在本地进行压测
四,Linux环境下
4.1.linux部署mysql
4.2.在mysql客户端软件(我用的Navicat)创建与虚拟机的连接
4.3.将ServerAgent上传到linux并解压
4.4.开放Linux的对外访问的端口4444:
- /sbin/iptables -I INPUT -p tcp --dport 4444 -j ACCEPT
- /etc/rc.d/init.d/iptables save —将修改永久保存到防火墙中
4.5.启动ServerAgent
- sh startAgent.sh
4.6.和上述本地压测数据库步骤一样,在jmeter创建连接和监控等
注意:
- 连接数据库的URL要把本地ip换成服务器ip
- 服务器资源监控插件的本地ip换成服务器ip
4.7Linux数据库压测(nmon监控)
1.将nmon上传到linux并解压
2.启动nmon服务:./nmon_x86_64_sles11
3.禁用监听器PerfMon Metrics Collector,启动分布式线程组
4.在linux输入c监控cpu,输入m监控内存,输入n监控磁盘
5.创建目录nmon_out,将监控信息打印到报告上
./nmon_x86_64_sles11 -s20 -c3 -f -m /usr/local/nmon/nmon_out
s20 每20秒采集一次数据
-c3 共采集三次
-f 生成的报告文件名中包含文件的创建时间
-m 生成的报告文件存放的目录
6.将生成的监控报告拖拽值本地,用nmon解析工具nmon analyser打开监控报告(要等nmon命令执行完再拖拽,不然文件不完整)
所需资源
下载地址