zoukankan      html  css  js  c++  java
  • Jmeter直连postgresql数据库进行压测

      关于Jmeter直连数据库进行压测,网上有好多教程了,pg数据库的相对少一些,今天自己测试了下,还是挺简单的,有个别需要注意的地方。相较于Loadrunner这么全面庞大的压测工具,Jmeter在数据库协议的支持上还是要灵活好多的,也比LR易用。

    下载通过jdbc连接postgresql的jar包

      这个地方要注意一下,如果没有jar包或jar包的版本不对,会提示“could not load 'org.postgresql.Driver'”。

      根据自己机器安装的jdk版本(如我的是1.8.1,下载JDBC4.2的版本),下载对应版本的jar包,如果下载版本不对,可能会出现上述错误。

      下载地址:https://jdbc.postgresql.org/download.html

      下载完成之后,放到Jmeter安装路径lib文件夹下,如C:/Program Files/Apach Jmeter4.0/lib/下,然后重启Jmeter。

      我下载的是这个版本:

    配置JDBC连接

      Jmeter基本使用就不说了,首先测试计划右键添加线程组,线程组下添加--配置元件--jdbc connection configuration。

      注意:

    • Variable Name for created pool:连接池名称,随意取,后续请求会用到,如名称为pgsql。
    • Validation Query:这个有好多资料里都没说到,validationQuery must be an SQL SELECT statement, that returns at least one row。不同的数据库,所选择的Validation Query是不同的,经过外国友人的测试,具体可参照以下(postgresql选select 1):
      • hsqldb - select 1 from INFORMATION_SCHEMA.SYSTEM_USERS
      • Oracle - select 1 from dual
      • DB2 - select 1 from sysibm.sysdummy1
      • mysql - select 1
      • microsoft SQL Server - select 1 (tested on SQL-Server 9.0, 10.5 [2008])
      • postgresql - select 1
      • ingres - select 1
      • derby - values 1
      • H2 - select 1
      • Firebird - select 1 from rdb$database
    • Database Url:连接postgresql的配置,格式:jdbc:postgresql://ip:port/dbname,如 jdbc:postgresql://10.21.11.11:5432/testdb
    • JDBC Driver class:数据库驱动,不同数据库类型选择不一样,postgresql选择“org.postgresql.Driver”
    • username,password:数据库登录信息

      配置完成后,就可以添加sql请求进行测试了。

    配置jdbc Request

      线程组右键添加--Sampler--JDBC Request。

    •  Variable Name of Pool declared in JDBC Connection Configuration:这个地方就是之前说到的,在配置时取的连接池名称,一定要一致,如之前连接池名称为pgsql,该处填pgsql。
    • Query Type:根据自己要测试的sql类型,选择对应的即可。如select语句为Select Statement。这个地方要注意的是,sql的执行,是有解析的,经过语法分析、语义分析、生成执行计划等,所以为了提高性能,会有预编译,即对于多次执行的可变参数sql来讲,选择Prepared Statement性能要好一些。选择Prepared Statement后,用?进行参数填充并在下边进行参数配置。
    • Query:要测试的sql。

    后续的参数化、压测等就跟正常请求没区别了。

     

  • 相关阅读:
    angluarjs2项目生成内容合并到asp.net mvc4项目中一起发布
    asp.net core 1.1 升级后,操作mysql出错的解决办法。
    asp.net core 简单部署
    asp.net core 简单部署之FTP配置(CentOS 7.0安装配置Vsftp服务器)
    Angular2中对ASP.NET MVC跨域访问
    js中获取DOM元素
    nodejs中的express框架
    jquery.validate的效验方式
    Asp.net MVC4 下二级联动
    Newtonsoft.Json文件错误
  • 原文地址:https://www.cnblogs.com/Invokerr/p/9928865.html
Copyright © 2011-2022 走看看