下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、网上订购地址:http:/www.china-第 4 章应用实例讲解4.1一种特殊的数据库性能测试方法很多同志在进行数据方面性能测试时束手无策,前面在第二章的第二节我们已经介绍了如何应用 ODBC 协议录制LoadRunner 8.0 自身带的“ Flights-ODBC_Access ”例子。这里作者为您提供另一种简便的方法。问题描述: 一个面向全国各个中小学的信息管理系统,随着系统被广泛的应用,访问人数的急剧增加、数据量也在飞速增长,如何为用户提供方便、快捷的应用呢?数据库集群项目背景介绍经过公司相关技术人员的讨论,决定采用数据库的集群技术来解决这些问题,将先前1台数据应用服务器扩展为台。
2、数据库为Mysql ,如果您关心数据库的集群技术,请查阅相关资料, 在这里不再赘述。 实施的整体思路是这样。 由于操作人员主要是进行数据的插入工作,在某一段时间内操作人员比较集中, 数据量也较大, 为了估计集群后会给性能带来多大的提升, 我们分别部署了两套运行环境, 一套是先前的单一数据库应用服务器环境, 另外一个则是三台数据库服务器进行集群。 为了记录用户并发插入大数据量系统的响应时间, 在相关表中添加了日期时间型字段, 记录插入首条和末尾记录的时间, 这样, 末尾时间减去首条记录插入时间, 就是多用户并发插入大批量数据的执行时间了。实施过程如下:第一步,数据库管理员用Java 写了一段代码
3、:public class testclus public static void main(String args) /如果传入参数个数不等于2,则给出提示信息"调用: java testclus ip:port recordcnt"if (args.length!=2)调用: java testclus ip:port recordcnt");return;/根据传入参数,动态建立连接字符串String URL = "jdbc:mysql:/" +args0+"/testclus?characterEncoding=gbk&quo
4、t;int cnt = Integer.parseInt(args1);try /声明并得到起始记录插入时间long timeBegin;/数据库连接初始化操作Connection conn = DriverManager.getConnection(URL,"root","admin");/循环插入记录PreparedStatement pstmt = conn.prepareStatement("insert into test(cnt, timer)values (?, now()");Statements=conn.creat
5、eStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONL Y);timeBegin = d1.getTime();for (int i=1; i<=cnt; i+)pstmt.setInt(1, i);pstmt.executeUpdate();ResultSet rs=s.executeQuery("select count(*) from test");conn.close();/得到末尾记录和起始记录插入的时间差值并输出毫秒 ");/异常处理部分catch(ClassNot
6、FoundException e) 找不到驱动程序");e.printStackTrace();catch(SQLException e) e.printStackTrace();catch (Exception e) e.printStackTrace();接下来,再建立一个批处理文件,批处理文件内容如下:echo offif "%JA VA_HOME%" = "" goto error_settingset CLASSPATH=%JA VA_HOME%jrelibrt.jar%JAVA_HOME%binjava -classpath &qu
7、ot;%CLASSPATH%" testclus %1 %2goto end:error_settingecho -echo 使用方法:echo1.请设置 JAVA_HOME环境变量 (JDK1.4 安装路径 );echo2.请先将本程序所在的目录选择为当前目录后再执行。echo -goto end:endset CLASSPATH=批处理接受2 个参数, 第一个参数为数据库服务器的“ IP 地址 :端口号” ,第二个参数为需要循环插入的数据数。如:1000,其含义就是向IP地址为,端口为3306的mysql数据库中插入1000 条记录。批处理方式解决方案LoadRunner 如何调
8、用批处理文件呢?LoadRunner 中可以调用System()函数来调用一个可执行文件或者批处理文件等,所以我们就可以直接调用该函数,指定相关参数, 为了能够进行多用户并发,需要插入集合点。相关脚本如下:#include "web_api.h"Action()lr_rendezvous("in");return 0;为了进行集群测试,还需要另外创建两个脚本,两个脚本如下:#include "web_api.h"Action()lr_rendezvous("in");return 0;#include "
9、web_api.h"Action()lr_rendezvous("in");return 0;接下来,就可以分别在Controller 中进行负载了,相应场景设置如下:图 4 1:单一数据应用服务器场景设置图 4 2:三台数据应用服务器集群场景设置而后该场景在数据库为空和数据库存在百万条记录情况下分别进行测试,经过几轮测试对结果的分析发现集群后性能比单台数据应用服务器的性能提高3到 5倍。【作者提示】1. 在进行性能测试的时候, 一定要注意环境的一致, 包括: 操作系统、应用软件的版本以及硬件的配置等,而且在进行数据库方面的测试的时候一定要注意数据库的记录数、配置
10、等要一致,只有在相同条件下进行测试,才可以对结果进行比较。2. 如果几个脚本要实现并发, 集合点一定要设置成相同的名称, 如在本例中名称都为 “ in”。3. Java 程序运行所依赖的 jar 包以及批处理文件应放置到脚本所在目录,否则无法正确运行。Controller灵活,与将场景保存以后,建立一个批处理文件,通过wlrun 命令来启动执行场景也是一种非常好的方法,通过AT 命令或者计划调用批处理则控制更加Controller 场景的定时运行取得相同的效果。在本书的第六章提供了AT 命令和计划应用的介绍,有兴趣的同志,可以看一下这部分内容。出师表两汉:诸葛亮先帝创业未半而中道崩殂, 今天下
11、三分, 益州疲弊, 此诚危急存亡之秋也。然侍卫之臣不懈于内,忠志之士忘身于外者,盖追先帝之殊遇,欲报之于陛下也。诚宜开张圣听,以光先帝遗德,恢弘志士之气,不宜妄自菲薄,引喻失义,以塞忠谏之路也。宫中府中,俱为一体;陟罚臧否,不宜异同。若有作奸犯科及为忠善者,宜付有司论其刑赏,以昭陛下平明之理;不宜偏私,使内外异法也。侍中、侍郎郭攸之、费祎、董允等,此皆良实,志虑忠纯,是以先帝简拔以遗陛下:愚以为宫中之事,事无大小,悉以咨之,然后施行,必能裨补阙漏,有所广益。将军向宠,性行淑均,晓畅军事,试用于昔日,先帝称之曰“能 ”,是以众议举宠为督:愚以为营中之事,悉以咨之,必能使行阵和睦,优劣得所。亲贤臣, 远小人, 此先汉所以兴隆也; 亲小人, 远贤臣, 此后汉所以倾颓也。 先帝在时,每与臣论此事, 未尝不叹息痛恨于桓、 灵也。 侍中、尚书、 长史、 参军,此悉贞良死节之臣,愿陛下亲之、信之,则汉室之隆,可计日而待也。臣本布衣,躬耕于南阳,苟全性命于乱世,不求闻达于诸侯。先帝不以臣卑鄙,猥自枉屈,三顾臣于草庐之中,咨臣以当世之事,由是感激,遂许先帝以驱驰。后值倾覆,受任于败军之际,奉命于危难之间,尔来二十有一年矣。先帝知臣谨慎,故临崩寄臣以大事也。受命以来,夙夜忧叹,恐托付不效,以伤先帝之明;故五月渡泸,深入
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 零售业客户服务流程优化方案
- 篮球馆活动促销活动方案
- 社会活动文体活动方案
- 疫情时期品牌活动方案
- 虎年趣味活动方案
- 疫情期间校园内活动方案
- 越野摩托团建活动方案
- 疫情捐赠舞蹈活动方案
- 非遗文化表演活动方案
- 疫苗加强针宣传活动方案
- 2025年中考英语高频词汇分类记忆《背诵版+默写版》
- 物业服务用房移交协议
- 《浓浓重阳情 深深敬老意》课件-小学生重阳节主题教育班会版
- 中德住房储蓄合同范本
- 心理咨询法律培训课件
- 宋代诗人林升简介
- 皮炎和湿疹(皮肤性病学课件)
- 企业股东出资协议书
- 第8课 中国古代的法治与教化 教学课件-高二上学期历史统编版(2019)选择性必修1国家制度与社会治理
- 坡屋面双面模板方案
- 国开药物化学(本)形考1
评论
0/150
提交评论