今天工作中需要对mysql进行性能测试

我尝试用LR来做;但是mysql需要现在电脑上安装一个OBDC的mysql驱动器,然后在电脑的管理工具中的数据源中加入这个mysql驱动,测试连接数据库成功,OK

返回LR,我们需要用到lr_db_connect这个函数来连接数据库,这个函数只有在webservice录制中才可用。

 Action()
{

//打开连接,注意DRIVER就是上面安装的  
   // int NumRows=0;
int i=0;
    lr_db_connect("StepName=databaseConnect",
"ConnectionString=DRIVER={MySQL ODBC 5.3 ANSI Driver};SERVER=58.215.41.2;PORT=3306;DATABASE=dbo;USER=XXXXXXX;PASSWORD=XXXXXXX;OPTION=3",
"ConnectionName=mysql",
"ConnectionType=ODBC",LAST);
lr_start_transaction("SQL");
while(i<1000){

lr_db_executeSQLStatement("StepName=PerformQuery",
"ConnectionName=mysql",
"SQLStatement=SELECT * FROM himall_members",
"DatasetName=MySQL",LAST);
i++;
}//执行SQL语句
/*lr_output_message(lr_eval_string("{idParam}"));*/
lr_end_transaction("SQL", LR_AUTO);
//lr_output_message("The query returned %d rows.",NumRows);
/*lr_db_dataset_action("StepName=actionPrint",
 "DatasetName=MySQL",
 "Action=PRINT",
 LAST);*/ //对数据库执行操作
lr_db_disconnect("StepName=disconnect",
"ConnectionName=mysql",LAST);
//ConnectionName的值与lr_db_connect中的ConnectionName值要相同
//与数据库断开连接

}

但是webservice需要支持websevice的license才能运行场景。

找到了一个超级license 支持所有类型 支持65000并发

 AEACFSJI-YJKJKJJKEJIJD-BCLBR
 
连接数据库进行测试,这样的并发测试场景最好只在一台压力机上运行,否则连接数据库会出错,比如会报错说:无法连接已关闭的资源,等等。localhost
 
结果分析:平均每个用户执行一次1000次查询的脚本的耗时为11s(回放时可知),那么每秒一个用户对系统的交互次数约为100次,若要1s中系统承受5000的并发数,就需要50个并发用户去执行这个脚本。

50个用户 每个用户每次执行1000次查询,那么在压力场景中的每秒钟查询次数就约为5000次(11/50*1000=1/5000),平均每次查询的响应时间是0.41s,

那么就是在5000的并发数的压力下集群数据库对读操作的响应时间为0.41s。

主要用于对集群后数据库性能优化的验证。当然其中的sql语句最好是基于常用业务的,这样结果更有用。

 
 
 
 

LR 测试数据库总结的更多相关文章

  1. windows 测试数据库的连接状况-udl方法

    udl是windows系统上,用于测试数据库的连接状态的测试软件. 使用方法: 1.建立一个空白文本 2.将文件的后缀名更改为*.udl 即可     文件内容一定为空 3.选择windows的“提供 ...

  2. 共享参数ContentProvider 类与数据库绑定,如何通过共享参数测试类,测试数据库的增删改查功能

    Intent可以传一个对象 当两个界面之间跳转时,需要传递一个对象过去,是通过使用Bundle类,并且实体类需要serializable实现序列化,传递方法如下: 定义一个静态常量作为key值 pub ...

  3. 第三篇--Jmeter测试数据库Mysql

    Jmeter模拟100用户访问Mysql数据库 1.将Mysql数据库的驱动[mysql-connector-java-5.1.15-bin.jar]放到jmeter的lib目录下,新建线程组100[ ...

  4. Windows MySQL测试数据库employees的导入

    一: 首先下载employees测试数据库 https://launchpad.net/test-db/ 二:用文本编辑器打开其中的employees.sql文件,将第38行的set storage_ ...

  5. python+Django+test 测试数据库生成报错

    前提: 使用Django自带的test进行单元测试. 问题描述: 运行:python manage.py test,报错,出现数据库乱码的现象,报错如下: Creating test database ...

  6. LR 测试http协议xml格式数据接口

    Action() { lr_start_transaction("T1"); web_custom_request("xxxxHTTPRequest", &qu ...

  7. 装服务器,测试数据库,简单的maven命令

    [说明]今天总体回顾一下:大概是早上装服务器,下午测试数据库,晚上了解简单的maven命令 一:今日完成 1)在远程服务器的tomcat 设置好管理员的登录账号 2)登录tomcat 的项目管理 查看 ...

  8. 导入MySQL测试数据库employee报错

    导入MySQL测试数据库employee 报错 下载地址:https://launchpad.net/test-db/ 上传解压: [root@001 ~]# tar xf employees_db- ...

  9. 记一次使用LR测试UDP和TCP的过程

    背景 最近项目要做性能测试,要出要一份性能报告,让我出一个有关Tcp和Udp的功能模块的测试,流程大概是这样,先走TCP协议协商一下会话,协商成功后走Udp收发数据. 有点简单啊,自己写个功能模块测一 ...

随机推荐

  1. 慢牛系列四:好玩的React Native

    在上次随笔(系列三)中,我试着用RN实现了一个Demo,感觉很不错,当时遇到的问题这篇文章里基本都解决了,比如导航动画问题,这篇文章里主要介绍RN的动画,学会动画以后,各种小创意都可以实现了^^ 下面 ...

  2. $self $index $first $last parent() outerParent()

    index5.html <html><head> <title>$self $index $first $last parent() outerParent()&l ...

  3. 一种仿照Asp.net Mvc思维构建WebSocket服务器的方法

    问题场景 Asp.net Mvc提供了DependencyResolver.Routing.Filter. Modelbinder等webForm所没有新概念,提高Web服务编写的便利性,记得很久之前 ...

  4. MYSQL查询语句优化

    mysql的性能优化包罗甚广: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等.这里的记录的优化技巧更适用于开发人员,都是从网络上收集和自己整 ...

  5. [AHOI2013]立方体(三维bit)

    [Ahoi2013]立方体 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 130  Solved: 55[Submit][Status] Descrip ...

  6. 07.C#泛型的限制和可空类型的简单说明(三章3.5-四章4.1)

    自己在写文章的同时,也是在学习,对于书中的语句很多其实没有太好的理解,读一本书,要消化!!!三章都是讲泛型的,最后写一下泛型的限制,对于本章学习的完结,one end,one begin. 看下面的代 ...

  7. [C#]AES加密算法实现

    密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准.这个标准用来替代原先的DES,已经被多方分 ...

  8. “耐撕”团队2016.05.11站立会议

    1. 时间 18:15--18:35     共计20分钟 2. 人员 Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客:ht ...

  9. 转:java多线程--同步容器

    java同步容器 在Java的集合容器框架中,主要有四大类别:List.Set.Queue.Map.List.Set.Queue接口分别继承了Collection接口,Map本身是一个接口.注意Col ...

  10. iOS开发小技巧--初始化项目中修改APP安装后的名称