使用RPT进行 Web 应用程序的负载测试第 2 部分: 创建并且运行性能测试
上一篇 / 下一篇 2010-10-25 15:02:24 / 个人分类:Rational Performance Tester
简介: 本文是本系列四篇文章的第 2 部分,它指导您通过安装一个 IBM® Rational® 性能测试器的评价版本,创建一个简单的测试,并且运行针对被配置在 IBM® WebSphere® Application Server Community Edition 和 IBM® DB2® Express 上的 DayTrader 应用程序的
IBM® Rational® Performance Tester 是一款性能测试工具,它仿真各种各样的用户负载来模拟真实生活中的负载。通过适当的计划,这一工具利用当前的负载来估计未来的负载。例如,一个客户的应用程序可能最多只能够服务5000位用户。通过 Rational Performance Tester,您能够轻易的估计出用户负载分别为1000、2000、3000、4000、5000以及更多的情况,以便您能够设计正确的用户增长,并且能够更加精确的设计服务的规格,例如最佳的 CPU 和内存需求。您能够识别并且诊断出性能的瓶颈,无论这种问题是发生在网络、数据库、应用服务器、甚至是用户应用程序之中。这一基础导致分析能力进一步分析应用程序的等级,它可能包括诸如 Enterprise Java™Beans (EJBs)、servlets、Java™ Database Connector (JDBC) API、网络服务器等等页组件。这一功能性使您能够通过分析在线的或者解压的报告轻易地和有效地查明性能问题。
下面,对本系列的四篇文章加以简短的介绍:
- 第 1 部分为您提供了关于 IBM Rational Performance Tester Version 7.0 的一个总体介绍。
- 第 2 部分(本部分)通过创建、运行、和评估一个简单的测试,向您介绍了使用 Rational Performance Tester 的基本知识。
- 第 3 部分介绍了不同用户负载的测试(请参见下一小节)。
- 第 4 部分全部是关于报告的内容。
本系列文章的目的是帮助您理解特性、拓扑事项、以及约束条件,以便您能够创建和测试网络应用程序,并且分析其性能报告。根据这一知识以及 Rational Performance Tester 的使用的便捷性,负载测试一个网络应用程序不再是一项繁重的重担,您能够将其包含在软件的每一次迭代中。
在本系列文章的第一部分中,您已经对 IBM Rational Performance Tester 的功能建立了整体的认识,它能够帮助您自动处理许多性能测试过程。本文是本系列文章的第 2 部分,它将帮助您开始实际使用这一测试工具。
第 2 部分知道您安装一个评价版本的程序、创建一个简单的测试、并且运行配置在 IBM® WebSphere® Application Server Community Edition 和 IBM® DB2® Express 上面的 DayTrader 应用程序的测试。它还为第 3 部分打下了基础,在第 3 部分中,您将运行不同用户负载规模的测试。
本文最后是一个可选的小节,它描述如何配置 DayTrader 的例子应用程序。如果您愿意的话,您也可以为您需要测试性能的应用程序创建测试。
下载一个 Rational Performance Tester V7.0 的评价版本
从 IBM developerWorks 下载一个 Rational Performance Tester 的评价版本,其中包括三个文件:RPT_V7.0_Part_1.zip、RPT_V7.0_Part_2.zip和RPT_V7.0_Part_3.zip。评价证书的有效期从安装之日开始计算是30天,最多允许五个并发的虚拟用户。在有效期到期后,您需要购买一个商业证书密钥来激活 Rational Performance Tester 才能继续使用它。请您参见参考资源一节中的链接来下载 IBM Rational Software Development Platform. V7.0 - 在 Desktop Product Activation 区域中,您能够获得关于激活过程的证书和相关信息。
安装 Rational Performance Tester 的机器被称为工作台。它需要最少 1GB 的内存和最少 1GB 硬盘空间。
安装 Rational Performance Tester
这些步骤将指导您完成安装操作:
- 将以下三个文件解压到临时文件夹C:\temp中。
- RPT_V7.0_Part_1.zip
- RPT_V7.0_Part_2.zip
- RPT_V7.0_Part_3.zip
操作完成之后,您将找到三个解压后的文件夹:disk1、disk2 和 disk3。
- 在disk1文件夹中,点击launchpad.exe文件,启动安装。
- 选择Install IBM Rational Performance Tester (Includes Agent),如图1中所示。
- 当您被提示时请接受该协议,并且点击Next。IBM Installation Manager将会首先被安装。接受默认的位置,并且点击Next。
- 点击Install安装 IBM Installation Manager,并且在安装完成后点击Finish。
- 下一幅屏幕将会显示即将被安装的 Rational Performance Tester 。请确保IBM Rational Performance Tester Version 7.0.0处于被选中状态,如图2中所示,然后再次点击Next。
图 2. 安装 Rational Performance Tester 包
- 再次接受许可协议,安装 Rational Performance Tester ,点击Next。
- 屏幕上显示Select a location for the shared resource directory,或者输入一个新的位置,或者接受默认的位置,然后点击Next,如图3中所示。
- 在下一幅屏幕上,请确保Check a new package group处于被选中状态,或者为安装输入一个新的位置,或者接受默认的安装位置。点击Next,如图4中所示。
图 4. Rational Performance Tester 安装位置
- 点击Next两次,直到您看到屏幕上显示Select the Features you want to install为止。接受默认设置,点击Next,如图5中所示。
- 多次点击Next直到您看到标题为Configure the IBM Rational Agent Controller installation的屏幕为止,如图6中所示。IBM® Rational® 代理控制器同 Rational Performance Tester 一同被安装。
- 选择Typical installation并且点击Next。
- 在Summary Information屏幕上,点击 Install,如图7中所示。
- 当成功完成安装操作之后,您将看到如图8中所示的屏幕。选择IBM Rational Performance Tester并且点击Finish。启动 Rational Performance Tester 。
要创建一个性能测试来运行一个应用程序,您就要使用 Rational Performance Tester 来记录同基于网络的应用程序进行的交互作用的序列。这一序列被称作测试场景。您需要在开始记录之前就计划好测试场景。在本文中,测试场景的例子是本文需要用户登录 DayTrader 应用程序,购买和出售股票,然后登出该应用程序。
在记录性能测试之前,您还需要创建包括这些测试的性能测试项目。Rational Performance Tester 然后打开一个浏览器,使您记录测试场景并且生成该测试。您能够对生成的测试进行编辑,向其添加确认点、数据池、定制代码、以及其他变量。在这个例子中,您将添加一个保存相同值的多个数据的数据池。在将数据池同测试关联之后,它将会在执行时将测试中的值置换为数据池中的值,从而仿真不同的用户对服务器的请求。
要运行完成的测试,您需要为测试创建一个测试调度和一个用户组。测试调度包括一个或者许多用户组。记录的测试被添加到用户组中。使用测试调度和用户组能够控制测试的运行。例如,一个测试能够顺序的、随机的或者按照权重顺序运行;按照设定的间隔或者次数运行;远程运行;以及仿真工作量。这个例子使用响应时间崩溃选项(它是在测试调度下面被选中的),在测试运行时收集被捕获的页面元素的统计数字。响应时间崩溃显示我们在每一个页面上所花费的时间。要收集响应时间的崩溃,就必须运行 DCI 监视器。
以下步骤将指导您完成从创建到运行测试,以及为分析生成报告的操作:
- 首先,启动 IBM WebSphere Application Server Community Edition,它将启动 DayTrader 应用程序:Start > All Programs > IBM WebSphere > Application Server Community Edition > Start the server。
- 启动 Rational Performance Tester ,点击OK将测试项目保存到默认的工作空间位置上,如图9中所示。
- 在Test Navigator中,右键单击,显示菜单。
- 选择New > Performance Test Project,如图10中所示。新的 Performance 测试项目窗口将被打开。
- 输入Project Name为
DayTraderProject
,并且选中Use default location,如图11中所示。 - 点击Finish创建项目。
- 在项目被创建之后,Create New Test from Recording窗口将被打开,如图12中所示。
- 选中Create Test from New Recording并且选择HTTP Recording。点击Next。
- 对于Select Location for Test Suite,选择DayTraderProject。在Test file name域中,输入
DayTraderTest
,如图13中所示。 - 点击Finish启动,初始化记录器。
- Rational 性能测试记录器在初始化操作之后,将打开一个新的浏览器。
- 在浏览器中,输入 DayTrader URL (此即 DayTrader 应用程序的默认位置):
http://IIC02:8080/daytrader/app
- 记录下列测试场景:
- 点击Trading & Portfolios标签。
- 登录,使用默认的用户名和密码,如图14中所示。
- 当 DayTrader 主页被显示之后,点击顶部的Quotes/Trade链接,打开Quotes页面,如图15中所示。
- 点击Quote表中第一行的Buy按钮,购买100 shares,如图16中所示。确认屏幕将会确认您的购买操作。
- 点击顶部的Portfolio链接,打开用户Portfolio页面。
- 验证 Portfolio 中所反映的购买操作。在同一个页面中,请注意列出的资产编号。
- 下一步,点击Portfolio表中第一行的Sell链接,出售股份,如图17中所示。确认屏幕将会确认您的出售操作。
- 再次点击Portfolio链接,查看反映销售的资产编号。
- 点击Logoff然后关闭浏览器。
控制器将返回到 Rational Performance Tester ,进行记录和显示测试内容。
- 在Test Navigator中,右键单击,显示菜单。
- 选择New > Datapool。新的数据池窗口将被打开,如图18中所示。
- 在Enter or select the parent folder域中,输入
DayTraderProject
。在Name域中,输入DayTraderDatapool
,如图19中所示。 - 点击Next。
- 对于Description,为数据池输入登录 ID,对于Initial Table Dimension,输入“两”列。
- 点击Finish。
- 接下来,点击Variable1列,Edit Variable 窗口将被打开。
- 为
LoginID
列命名,对于Type,输入String
。然后点击OK。
- 如上所述,对变量2执行相同的操作。将新的列命名为 Password,并且指定Type为 String。
数据池将包括五个不同的用户登录 ID,分别编号为:uid:0到uid:4,如表1中所示。
User ID | Password |
---|---|
uid:0 | xxx |
uid:1 | xxx |
uid:2 | xxx |
uid:3 | xxx |
uid:4 | xxx |
提示:
为下一个记录添加一行,按下回车键,或者右键单击最后一个记录并且选择Add Record。
提示:
使用组合键CRTL-S保存数据池。
- 在Test Navigator中,点击DayTraderTest打开属性页面。
- 右键单击DayTraderTest并且选择Add > Datapool。
- 当 Import Datapool 窗口被打开时,选择如下内容:
- 匹配资源:DayTraderDatapool.datapool。
- 打开模式:共享式(每一台机器)
- 当最后一行到达时的约束:选中的
- 点击Select接受 DayTraderDatapool.data 池作为 DayTraderTest。Test Element Details将会被更新为数据池中的信息。
- 保存变化,请使用组合键CTRL+S。
6. 将用户 ID (uid)和密码的值同数据池中的列相关联
- 在Test Navigator中,点击 DayTraderTest,打开属性页面。
- 展开Welcome to DayTrader页面,然后选择iic02:8080/daytrader/app。
- 滚动Test Element Details屏幕,直到您看到Data小节中的uid和passwd,如图27中所示。
- 点击uid的值(如图28中所示的紫色加亮部分),菜单将被显示,选择Substitute From > Datapool Variable。
- Select datapool column窗口将被打开。选择Column:LoginID,然后点击底部的Use Column按钮,如图29中所示。
uid的值将用绿色被加亮,指出关联性,如图30中所示。
- 重复图 25之后的操作,将密码值同数据池中的密码列关联起来。关联之后,密码将用绿色被加亮,如图31中所示。
- 在完成关联操作之后,再次点击Welcome to DayTrader页面。请注意,Test Data表中现在包括这个关联,如图32中所示。
- 保存变化,使用组合键CTRL+S。
- 在Test Navigator中,右键单击DayTraderProject,显示菜单,然后选择New > Performance Schedule,如图33中所示。
- Performance Schedule窗口将被打开,如图34中所示。输入
DayTraderSchedule
作为测试调度的名称。
在Performance Schedule属性窗口中,如图35中所示,在Schedule Contents下面请注意DayTraderSchedule和一个user group。在Schedule Element Details中,General标签显示Number of users的默认值为5。此即为您所运行的 Rational Performance Tester 的评估版本中虚拟用户数量的最大值。
- 在Schedule Element Details中,点击>显示更多的标签。
- 点击Response Time Breakdown标签,如图36中所示。
- 选择Enable collection of response time data,如图37中所示。
- 选择DayTraderTest,执行收集。
- 在Options下,选择High作为Detail的级别。
- 选择Only sample information from a subset of users。
- 选择Fixed number of users,然后为per User Group输入
2
。
图 36. Response Time Breakdown 标签
图 37. Response time breakdown 设置
- 确保保存了设置(组合键CTRL+S)。
默认情况下,User Group 1将被用于添加测试。默认的用户组大小是100%运行在本地计算机上,如图38中所示。在本文(第 3 部分)的第二小节中,将介绍添加更多用户组作为用户负载测试的详细步骤。
9. 将 DayTraderTest 添加到 DayTraderSchedule
- 在Performance Schedule属性窗口中,右键单击User Group 1,并且选择Add > Test,如图39中所示。
- 在Select Performance Tests窗口中,展开DayTraderProject并且选择DayTraderTest,如图40中所示。
- 点击OK。
测试被添加到 User Group 1 下的测试调度中,如图41中所示。
图 41. 被添加到测试调度中的 DayTraderTest
- 再次使用组合键CTRL+S保存改变。
- 首先,启动DCI(数据转换接口)监视器,如图42中所示。在窗口中:IBM Software Delivery Platform. > IBM Rational Data Collection Infrastructure > Start Monitoring。
- 在Test Navigator中,右键单击DayTraderSchedule,显示菜单。
- 选择Run As > Performance Schedule,如图43中所示。
当收集操作完成之后,Rational Performance Tester 将启动该测试调度,收集数据,并且在报告中显示结果。
- 滚动到不同的标签上,查看报告。
当您完成性能报告之后,您能够导出一个 HTML、XML 或者 CVS 格式的版本,用于浏览器中进一步的分析、打印、显示,或者仅仅是通过电子邮件将其和其他人分享。按照下述步骤将报告导出为 HTML:
- 在Performance Test Runs视图中,右键单击您希望导出的报告。
- 从菜单中选择Export To HTML,如图45中所示。
请注意:
如果您无法看到这个报告,请右键单击DayTraderSchedule并且从菜单中选择Display Report,如图46中所示。
- 为报告提供location和file name,然后点击Finish,如图47中所示。
- 打开被导出的报告,并且在您的网络浏览器中回顾它,如图48中所示。
至此,您已经理解了基本知识,并且准备好进行第三部分(请参见参考资料中的链接)的操作,运行不同用户负载规模的性能测试。
- 下载IBM WebSphere Application Server Community Edition V1.1.0.2,请您参见参考资源小节中的链接,并且将其安装到 Rational 测试器的同一台机器上。
- 下载IBM DB2 Express-C 9,请您参见参考资源小节中的链接,并且将其安装到 Rational Performance Tester 的同一台机器上。
- 从下载小节中下载DayTrader.zip文件,并且解压缩到C:\下面。
- 接下来,设置数据库:
- 在 DB2 命令窗口中,创建一个名为
tradedb
的数据库:
命令:db2 create db tradedb
- 使用db2admin发布一个到 tradedb 的连接:
命令:db2 connect to tradedb user <db2admin> using <password>
- 加载 tradedb 的数据库测试调度:
命令:db2 –tvf C:\daytrader\modules\db2\sql\Table.ddl
- 在 DB2 命令窗口中,创建一个名为
通过以下这些步骤将 DayTrader 应用程序配置到 WebSphere 应用程序服务器之中:
- 编辑C:\daytrader\plans\dayTrader-db2-9.1-XA-plan.xml文件:
- 修改TradeDataSource的User、Password、DatabaseName和ServerName属性。
- 查询并且修改信息:
- {db2admin}
- {db2admin_passwd}
- {iic02.iicmy.ibm.com}
- {tradedb}
<name>jdbc/TradeDataSource</name> <config-property-setting name="User">{db2admin}</config-property-setting> <config-property-setting name="Password">{db2admin_passwd}</config-property-setting> <config-property-setting name="PortNumber">50000</config-property-setting> <config-property-setting name="ServerName">{iic02.iicmy.ibm.com}</config- property-setting> <config-property-setting name="DatabaseName">{tradedb}</config-property-setting> <config-property-setting name="DriverType">4</config-property-setting> |
- 将改变保存到dayTrader-db2-9.1-XA-plan.xml文件中。
- 通过点击Start > IBM WebSphere > Application Server community Edition > Start the server,启动WebSphere Application Server Community Edition。
- 打开 Windows 命令行,改变目录至%WASCE_HOME%\bin。
- 使用这条命令配置daytrader.ear文件:
deploy.bat deploy C:\daytrader\modules\ear\target\daytrader-ear-1.1.1.ear c:\daytrader\plans\dayTrader-db2-9.1-XA-plan.xml
- 当您在配置期间被提示输入用户名和密码的时候,请输入“system”作为username,“manager”作为password。
- 当配置完成之后,重新启动 WebSphere:
- Start > IBM WebSphere > Application Server community Edition > Stop the server
- Start > IBM WebSphere > Application Server community Edition > Start the server
- 在开始使用 DayTrader 之前对其进行配置:
- 在一个网络浏览器中,打开:http://iic02:8080/daytrader/
- 点击Configuration标签,然后点击(Re)-populate DayTraderDatabase。
- 一个新的浏览器将被打开执行移植操作。请您等待,在它完成后会自动关闭该浏览器。
- 请注意被移植的用户 ID。您将使用它登录 DayTrader 应用程序。所有用户 ID 的密码统一是
xxx
,如图52中所示。
描述 | 名字 | 大小 | 下载方法 |
---|---|---|---|
DayTrader sample application | daytrader.zip | 1799 KB | HTTP |
TAG:
- 引用 删除 colorfulbinary / 2011-09-15 16:31:49
- 翻译的很好理解,谢谢!比原文好懂很多
- 引用 删除 colorfulbinary / 2011-09-15 16:31:00
-
评 3 分
标题搜索
日历
|
|||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
1 | 2 | 3 | 4 | ||||||
5 | 6 | 7 | 8 | 9 | 10 | 11 | |||
12 | 13 | 14 | 15 | 16 | 17 | 18 | |||
19 | 20 | 21 | 22 | 23 | 24 | 25 | |||
26 | 27 | 28 | 29 | 30 | 31 |
我的存档
数据统计
- 访问量: 52182
- 日志数: 30
- 文件数: 2
- 建立时间: 2009-02-01
- 更新时间: 2012-03-15