使用Apache JMeter进行数据库压力测试

学习使用Jmeter对数据库进行压力测试。JMeter中称之为测试计划

JMeter的一个测试计划,包括:线程组、数据库连接、前置处理器、Sampler、后置处理器、监控结果等。

1.添加线程组:在测试计划上点右键,选择:添加》Threads(Users)》线程组;

2.添加JDBC Connection Configuration: 在线程组上点右键,选择:添加》配置元件》JDBC Connection Configuration;

3.添加前置处理器:在线程组上点右键,选择:添加》前置处理器》JDBC PreProcessor;

4.添加Sampler:在线程组上点右键,选择:添加》Sampler》JDBC Request;

5.添加后置处理器:在线程组上点右键,选择:添加》后置处理器》JDBC PostProcessor;

6.添加监控结果:在线程组上点右键,选择:添加》监听器, 可以使用 Summary Report、图形结果、用表格查看结果、监视器结果等等。

7.添加Random Variable:添加》配置元件》Random Variable;

可以设置上下级关系。

首页:

在测试计划的首页,设置计划名称、添加所用到的jar包、设置用户自定义变量

设置自定义变量时,使用单引号

 

线程组:

设置并发的线程数为:3,每个线程循环册数为:1 。 调度器可以设置计划开始、结束时间。

 

JDBC Connection Configuration:

Sybase ASE和IQ数据库的连接串为:

Database URL:    jdbc:sybase:Tds:10.233.69.103:6000/tpchdb?IS_CLOSED_TEST=INTERNAL

JDBC Driver Class:    com.sybase.jdbc3.jdbc.SybDriver

可以使用事务模式、隔离级别;Max Number of Connections设置连接池的大小;

使用Variable Name对数据库连接进行命名,后面的JDBC Request中需要设置。

 

JDBC Request

设置Variable Name为配置的数据库连接名称

SQL Query的Query Type主要包括:Select 、Update、Callable Statement、Commit、Rollback等。

一、多个查询语句(不使用参数的情况下)可以放在一起顺序执行,需要设置Query Type为:Callable Statement,然后顺序输入select语句,不用加go或者分号。如果Query Type设置为:Select Statement的话,只执行第一个SQL语句。

 

二、如果SQL语句中需要使用参数变量,那么Query Type 需要设置为:Select Statement ,需要先添加Random Variable,然后在Parameter Values中输入${变量名称},${变量名称};

在Paramter types中输入变量的数据类型。 如下图示:

中间用逗号分隔。只能执行第一个SQL语句。

 

对于Insert、Update、Delete语句,需要设置Query Type为:Update Statament.数据修改语句中可以使用参数,而且可以顺序执行多个修改语句。

 

定义随机数变量:

Output Format设置成:00000 表示数字形式。

 

用表格查看结果:

所有数据写入一个文件,将测试的执行结果保存文件中, 点浏览按钮设置文件名称。点Configure按钮设置保存文件中的内容。

 

查看日志:

选项》Log Viewer

 

保存窗口截图:

编辑》 Save Node as Image , Save Screen AS Image 将屏幕截图另存。

  • 本文链接地址:https://www.dbainfo.net/apache-jmeter-ase-oltp-test.htm
  • 本文为dbainfo个人原创,请在尊重作者劳动成果的前提下进行转载;
  • 转载务必注明原始出处 : Sybase数据库技术,数据库恢复专家
  • 对《使用Apache JMeter进行数据库压力测试》有何疑问或见解,请在本文下方发表;
  • 对网站还有其他问题或建议,请提交在留言板,谢谢!
  • 目前还没有任何评论.
    :wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)