`

db db2_monitorTool IBM Rational Performace Tester

阅读更多

使用 Rational Performance Tester 实现 DB2 性能测试和监控

http://tech.ddvip.com/2008-09/122155971965952.html

http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0801liu/

 

 

 

 

 

最佳实践和经验法则

developerWorks
文档选项
<noscript></noscript> <noscript>&lt;tr valign="top"&gt;&lt;td width="8"&gt;&lt;img alt="" height="1" width="8" src="//www.ibm.com/i/c.gif"/&gt;&lt;/td&gt;&lt;td width="16"&gt;&lt;img alt="" width="16" height="16" src="//www.ibm.com/i/c.gif"/&gt;&lt;/td&gt;&lt;td class="small" width="122"&gt;&lt;p&gt;&lt;span class="ast"&gt;未显示需要 JavaScript 的文档选项&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;</noscript> <script type="text/javascript"> &lt;!-- document.write('&lt;tr valign=&quot;top&quot;&gt;&lt;td width=&quot;8&quot;&gt;&lt;img src=&quot;//www.ibm.com/i/c.gif&quot; width=&quot;8&quot; height=&quot;1&quot; alt=&quot;&quot;/&gt;&lt;/td&gt;&lt;td width=&quot;16&quot;&gt;&lt;img alt=&quot;将打印机的版面设置成横向打印模式&quot; height=&quot;16&quot; src=&quot;//www.ibm.com/i/v14/icons/printer.gif&quot; width=&quot;16&quot; vspace=&quot;3&quot; /&gt;&lt;/td&gt;&lt;td width=&quot;122&quot;&gt;&lt;p&gt;&lt;b&gt;&lt;a class=&quot;smallplainlink&quot; href=&quot;javascript:print()&quot;&gt;打印本页&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;'); //--&gt; </script> <script type="text/javascript"> &lt;!-- document.write('&lt;tr valign=&quot;top&quot;&gt;&lt;td width=&quot;8&quot;&gt;&lt;img src=&quot;//www.ibm.com/i/c.gif&quot; width=&quot;8&quot; height=&quot;1&quot; alt=&quot;&quot;/&gt;&lt;/td&gt;&lt;td width=&quot;16&quot;&gt;&lt;img src=&quot;//www.ibm.com/i/v14/icons/em.gif&quot; height=&quot;16&quot; width=&quot;16&quot; vspace=&quot;3&quot; alt=&quot;将此页作为电子邮件发送&quot; /&gt;&lt;/td&gt;&lt;td width=&quot;122&quot;&gt;&lt;p&gt;&lt;a class=&quot;smallplainlink&quot; href=&quot;javascript:document.email.submit();&quot;&gt;&lt;b&gt;将此页作为电子邮件发送&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;'); //--&gt; </script>
将打印机的版面设置成横向打印模式

打印本页

将此页作为电子邮件发送

将此页作为电子邮件发送

讨论

样例代码

英文原文

英文原文

<!-- START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- this content will be automatically generated across all content areas --><!-- END RESERVED FOR FUTURE USE INCLUDE FILES-->

级别: 中级

Mike Liu (mikezliu@ca.ibm.com ), 软件工程师, IBM
Tony Lau (tktlau@ca.ibm.com ), 软件工程师, IBM, Software Group

2008 年 6 月 25 日

观 察如何在 IBM® DB2® for Linux®、UNIX® 和 Windows® 基准测试环境中使用 Rational® Performance Tester 作为性能测试工具。了解要使用的最佳实践和一般经验法则。Trade6 基准应用程序被用作示例工作负载。
<!-- START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --> <!-- END RESERVED FOR FUTURE USE INCLUDE FILES-->

简介

IBM 为社区提供了 DB2 免费版本 DB2 Express-C,它提供了与 DB2 Express Edition 相同的核心数据特性,为构建和部署应用程序奠定了坚实的基础。

DB2 Express-C

性能工 程是确定并报告软件解决方案当前性能的一门学科。它涉及模仿大量并发用户、收集诊断数据、绘图、进行性能分析和设计 System Under Test (SUT) 的技术改进。在达到性能目标之前,此过程将一直重复。在典型的 DB2 WebSphere® 拓扑中,SUT 中有十台以上的机器(否则会有上百台)是很常见的。因此,测试循环通常十分单调乏味并且容易出错。

Rational Performance Tester 是 IBM 旨在简化性能工程的性能测试和监控策略的基础。本文将介绍使用 IBM 测试解决方案在 WebSphere 集群环境中测试 DB2 的最佳实践。





回页首


目标

本文的主要目标是:

  • 描述在没有类似 Rational Performance Tester 的性能测试解决方案的情况下,性能测试和监控中的主要难点
  • 描述作为 IBM 测试解决方案的 Rational Performance Tester 和 Tivoli Performance Monitoring 基础设施
  • 了解在 DB2 WebSphere 环境中使用 Rational Performance Tester 的一些性能测试实践和经验法则




回页首


先决条件

以下是在测试环境中使用的机器、它们的作用、使用的硬件和安装的软件的清单。


表 1. 测试环境
机器 硬件 软件 数据库 RPT Agent
Controller (x2) HTTP Server /
WebSphere
Deployment
Manager WebSphere
Application
Server (x7) RPT
Workbench
4x1.45 GHz
Power4
16 GB RAM
  • IBM DB2 Enterprise Server Edition V9.1 Fix Pack 2 s070210 for AIX 64-bit
  • IBM Tivoli® Monitoring Server V6.1.0 Fix Pack 2 UNIX Platforms (C93SJIE.tar) + DB2 6.1.0-TIV-ITM_DB2-LA0053 Agent Support Install (6.1.0-TIV-ITM_DB2-LA0053.tar)
  • IBM Tivoli Monitoring for UNIX V6.1.0 Fix Pack 2 (C93SJIE.tar)
  • IBM Tivoli Monitoring for Databases V6.1.0 UNIX Platforms (C9393IE) + DB2 6.1.0-TIV-ITM_DB2-LA0053 Agent Support Install (6.1.0-TIV-ITM_DB2-LA0053.tar)
8x2 GHz
Intel XEON
4 GB RAM
  • IBM Rational Performance Tester Agent V7.0 (C95JAML.tar, C967UML.tar)
  • IBM Tivoli Monitoring for Linux V6.1.0 Fix Pack 2 (C93SRIE.tar)
2x2 GHz
AMD Opteron
4GB RAM
  • IBM WebSphere HTTP Server V6.1 (C88STML.tar)
  • IBM Edge Components V6.1 for Linux on x86-64, 64-bit support (C88XKML.tar)
  • IBM WebSphere Deployment Manager V6.1 (C88STML.tar)
2x2 GHz
AMD Opteron
2 GB RAM
  • IBM WebSphere Application Server Network Deployment V6.1 (C88STML.tar)
4x2.8 GHz
Intel XEON
4 GB RAM
  • IBM Rational Performance Tester V7.0 (C95J7ML.tar, C95J8ML.tar, C95J9ML.tar)




回页首


未使用 RPT 的性能工程

性能工程是确定并报告软件解决方案的当前性能的一门学科。它涉及设置 System Under Test (SUT)、模仿大量并发用户、管理 SUT、收集诊断数据、分析收集的数据和设计 SUT 的性能改进。在达到性能目标之前,此过程将一直重复。

 

  1. 设置测试环境。 测 试环境必须能够模拟生产环境。随后收集的度量单位要尽可能地与开发出来的模型一样精确。该度量单位可能像单节点 WebSphere Community Edition with DB2 Express-C 一样简单,或者可能是 WebSphere Application Server Extended Deployment Edition on DB2 9 的 16 节点集群。
  2. 模拟用户负载。 实际的用户负载要处理消费者行为分析和有效的线程实现。好的工作负载模拟器需要实现随机功能。而针对企业性能测试的出色工作负载模拟器则需要处理上千个线程和/或进程,并且必须具备良好的可伸缩性。
  3. 管理 System Under Test。 在进行每次尝试时,SUT 都必须处于相同状态,以便产生可重复的结果。为实现这一目的,您应该重复利用 WebSphere 和 DB2 的集群、清除不同目录中的日志文件并存储 DB2 表空间。为了产生可重复的结果而始终如一地执行所有这些操作是一个好的实践。
  4. 收集每台机器上的诊断数据。 至少应该具有 vmstat、iostat 和定期的 DB2 快照。必须在适当的时间使用适当的命令启动诊断工具。为了实现进一步的分析,必须系统地整理输出。为此,人们常常编写一些自定义脚本。
  5. 处理数字和绘图。 这包括大量的复制粘贴处理和电子表格处理。复杂度适中的系统在绘图和分析方面涉及的诊断数据将超过 100 份。专有的图形解决方案常常集成到自定义脚本中,以便将数据后处理(post-process)为人类可使用的形式。
  6. 重复 N 次! 执行性能测试的目的是发现性能瓶颈并进行性能改进。经过多少次尝试才能通过用户验收测试呢?根据我们的经验,一个版本可能要经过 100 次以上的尝试。

Rational Performance Tester 是 IBM 旨在简化性能工程的性能测试和监控的策略。在下面的小节中,将查看 RPT 如何通过模拟用户负载获得要绘制的结果图形,从而简化性能测试周期。





回页首


拓扑

首先设计测试环境的拓扑结构非常重要。典型的由 RPT 驱动的集群式 Trade6 测试环境由数据库、 HTTP 服务器、WebSphere 部署管理器、WebSphere 应用服务器、驱动程序和 RPT 工作台组成。我们的测试环境的拓扑如下所示:


图 1. 测试环境拓扑
测试环境拓扑
最佳实践:分隔 RPT 工作台和驱动程序机器

RPT 工作台应该安装在不同于工作负载驱动程序机器的单独机器上,以减少驱动程序方面的开销

最佳实践:分隔驱动程序机器和 Trade 集群

驱动程序的开销很高,应该与 Trade 集群分隔开来。如果驱动程序位于运行 Trade 服务器的机器上,那么集群的资源会出现负载失衡,如果使用的是简单的循环负载平衡方案,那么这可能导致性能问题。

经验法则:CPU / 网络宽带比

有许多因素影响着测试环境中每个组件对另一个组件的伸缩。例如,如果工作负载非常依赖于数据库,那么您可以期望获得高比率的数据库与 WebSphere CPU 比。对于我们的测试环境,我们发现以下比率在机器之间的平衡资源利用方面非常合适:

  1. 总 Driver CPU : 总 DB2 CPU
    4 : 1
  2. 总 HTTP Server CPU : 总 DB2 CPU
    1 : 10
  3. 总 WAS CPU : 总 DB2 CPU
    2 : 1 (对于 EJB 应用程序是 4 : 1)
  4. Network for Drivers : 总 DB2 CPU
    当数据库机器上有 4 个以下的 CPU 时,建议使用 100 Mb 的网络,对于超过 4 个 CPU 的机器,建议使用 1GB 的网络




回页首


设置 Trade6 环境

要在 DB2 和 WebSphere 平台上设置 Trade6 基准,并创建和填充数据库,请参考 “使用 DB2 UDB 设置并运行 Trade6 基准” 一文(请参阅 参考资料 )。

在下面几个小节中,将介绍如何使用 Rational Performance Tester 作为工作负载驱动程序,并了解一些用户可用的监控工具。





回页首


使用 RPT 作为工作负载驱动程序

使用 IBM Rational Performance Tester 作为工作负载驱动程序可以简化并自动化运行性能测试的过程。RPT 为用户提供了用来创建并运行不同类型的性能测试的框架,并提供了简化收集过程和分析性能度量过程的内置工具。

例如,RPT 中的 HTTP 协议允许用户记录、编辑和执行测量度量的 HTTP 性能测试,这些度量指标包括页面命中(page hit)、页面吞吐量和页面响应时间。

RPT 还为诸如 IBM Tivoli Monitoring、Windows Performance Monitor 和 rstatd 之类的资源监控工具提供支持,可以使用这些工具监控测试环境中所有机器上的资源。IBM Tivoli Monitoring 提供了用来进一步具体监控应用程序和数据库的可选组件。例如,Tivoli Monitoring for Databases 允许用户监控 DB2 数据库内部的多种度量指标,比如数据库快照、表空间和缓冲池。

RPT 工作台

该工作台可以充当用户配置、启动和监控性能测试的界面。在运行性能测试时,此工作台将部署 RPT 执行代码来确定目标部署机器,并使用 RPT 代理控制器执行它们。

安装 RPT 工作台

  1. 下载 RPT 7 安装包并运行 launchpad.exe 启动安装向导。


    图 2. 安装 IBM Rational Performance Tester
    安装 IBM Rational Performance Tester

  2. 选择安装 IBM Rational Performance Tester(包括 Agent)
  3. 如果尚未安装 IBM Installation Manager,那么请按照向导中的指令安装它
  4. 在 IBM Installation Manager 打开时,请选择安装 IBM Rational Performance Tester 7.0.0
  5. 同意许可协议并为共享目录和 RPT 选择安装路径
  6. 选择典型安装并按照指令完成安装

如果想和许多用户一起运行测试,那么必须获得 RPT 的许可密钥。可以使用包含许可密钥的许可服务器或使用许可文件获得许可密钥。要指向 Rational 许可服务器或导入许可文件,则应该运行 IBM Rational License Key Administrator(在 All Programs -> Rational Software 中可找到)。工作台使用的所有代理控制器都可以自动使用工作台使用的许可密钥。

最佳实践:增加工作台堆大小

对于依赖于从代理控制器和其他监控工具传输回工作台的大量数据的比较大的测试而言,默认工作台堆大小可能不够大。如果工作台内存不足,可以通过编辑位于 RPT 主目录中的 eclipse.ini 来增加默认工作台堆大小,并更改以下代码行:

-Xms40m


这指定了堆的大小。建议将最大工作台堆大小设置为 1.5 GB:

-Xmx1500m

最佳实践:日志级别

建议将 RPT 调度执行组件的日志级别设置为 “WARNING”,以减少系统开销。
要做到这一点,请转向 Window -> Preferences -> Logging。打开 Loggers 选项卡并将以下组件的日志级别更改为 “WARNING”:

com.ibm.rational.test.common.schedule.execution
com.ibm.rational.test.lt.execution

RPT 代理控制器

RPT 代理控制器必须安装在每台驱动程序机器上,以便为工作台提供控制它们的方法。这允许 RPT 工作台在这些机器上部署代码并执行性能测试。

安装 RPT 代理控制器

  1. 将代理控制器安装包下载到驱动程序机器上
  2. 运行安装向导(在 Linux 系统上,应该运行 install_linux.bin;在 Windows 系统上,应该运行 launchpad.exe,然后选择安装 Agent)
  3. 同意许可协议并选择安装路径
  4. 选择使用默认 JVM 并完成安装

要在 Unix/Linux 上启动代理控制器,请执行 RAStart.sh:

$ /opt/IBM/SDP70Shared/AgentController/bin/RAStart.sh
  Starting Agent Controller
  RAServer started successfully

最佳实践:对代理控制器使用正确的 JVM

确 保代理控制器使用的是随 RPT 一起打包的 JVM(RPT70/jdk/jre/bin/java)。要检查代理控制器正在使用的是哪个 JVM,请打开 <Agent Controller Home Dir>/config/serviceconfig.xml 并选择 JAVA_PATH 的值。作为好的实践,工作台使用的 Java 版本与代理控制器使用的 Java 版本应该是匹配的。

最佳实践:增加 tcpip 端口/打开文件的最大数量

在包含代理控制器的每台机器上,可能都需要应用以下调优:

  1. 在 Window 机器上,应该提高 tcpip 端口的数量限制:
    打开 regedit(Start -> Run -> regedit) 使用以下密钥将 MaxUserPort 的值编辑为 65534:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

  2. 在 Unix/Linux 系统上,应该使用 ulimit(作为根用户)增加所允许的打开文件的最大数量:

    $ ulimit -n 10050000

在应用调优之后,应该重启代理控制器,如下列清单所示:

$ /opt/IBM/SDP70Shared/AgentController/bin/RAStop.sh
  RAServer stopped, pid = 27275
$ /opt/IBM/SDP70Shared/AgentController/bin/RAStart.sh
  Starting Agent Controller
  RAServer started successfully





回页首


使用 RPT 运行性能测试

部署 Trade6 性能测试项目

这里提供了一个示例 RPT 性能测试项目(请参阅 下载 )。使用性能项目中提供的脚本,可以通过模拟的工作负载驱动 Trade6 环境,该模拟负载重复地命中 Trade6 网站的 /trade/scenario servlet。

要部署这些脚本,请打开 RPT 并选择将现有项目导入工作区。浏览解压缩 TradeProject 的位置,选中它,然后选择 Copy projects into workspace 。此外,还可以单击 Select archive file 直接指向压缩文件。图 3 显示了这些步骤:


图 3. 将项目导入 RPT 工作区
将项目导入 RPT 工作区

单击 Finish ,让 RPT 将此项目复制到工作区中。现在,工作区中应该有一个包含两个 Trade6 测试脚本的性能测试项目:


图 4. RPT 工作区视图
RPT 工作区视图

必须对这些脚本进行以下更改,以便将它们用于您的环境:

  1. 打开 TradeScheduleTest 并展开测试,直到看见 HTTP 请求元素。更改主机和端口,使其指向您的 Trade6 web 主机。


    图 5. 浏览 TradeScheduleTest
    浏览 TradeScheduleTest

  2. 打开 TradeSchedule 并展开 User Group 1。对于要部署此性能测试的每台驱动程序机器,可以单击 Add new 并添加该机器。


    图 6. 添加部署机器
    添加部署机器

最佳实践:在性能运行期间停止问题确定

通过性能调度中的 Problem Determination 选项卡启用问题确定,这允许代理控制器为调试过程生成日志。对于实际的性能运行,应该将问题确定日志级别调整为 “None”,以减少代理控制器机器上的系统开销,或者调整为 “Severe” 并从每个用户组抽取一名用户作为样本。

最佳实践:增加代理控制器上的 JVM 堆大小

对于大型性能测试,可能需要为代理控制器增加 JVM 堆。例如,如果将堆大小增加为 1500 MB,请双击代理控制器机器(在 Test Navigator 中),打开 General Properties 选项卡,然后添加命名为 RPT_VMARGS 的值为 –Xmx1500m 的新属性。对于 Windows,建议将最大堆大小设置为 1.5 GB,对于 Linux,建议将该值设置为 3 GB。


图 7. 将新属性添加到某个位置
将新属性添加到某个位置

运行 Trade6 性能测试

要启动性能测试,请右键单击 TradeSchedule test -> Run As -> Performance test schedule。此外,可以在选中性能测试的同时按下 Alt+Shift+X, C 组合键。

然后工作台会将性能测试以及所需的 RPT 库部署到每台驱动程序机器并执行它们。在执行测试时,可以查看性能报告的不同页面,从而可以动态监控测试。

图 8 显示了吞吐量页面,该页面显示了与页面命中率和用户负载有关的信息:


图 8. 性能报告的吞吐量页面
性能报告的吞吐量页面

Response vs. Time 页面显示了每个请求的平均响应时间。图 9 显示了此响应时间页面:


图 9. 性能报告的响应时间页面
性能报告的响应时间页面




回页首


RPT 中的监控工具

Rational Performance Tester 7 为三个监控工具提供了集成式支持:

  • rstatd
  • IBM Tivoli Monitoring
  • Windows Performance Monitor

建议为性能测试环境中的每台机器至少安装一种类型的监控工具。这样做可以监控所有资源并杜绝任何资源瓶颈。

要启动监控,请转向性能调度的 Resource Monitoring 选项卡,如图 10 所示:


图 10. 启动资源监控
启动资源监控

单击 Add New 添加要监控的新机器。然后系统会提示您确定要进行监视的主机和要使用的监控工具。

最佳实践:同步系统时钟

多数监控工具都基于监视器下的系统使用时间戳来收集统计数据。因此,您首先应该同步正被监控的所有系统中的系统时钟。

在 Linux 和 AIX 系统上,可以键入以下内容(作为根用户)来实现这一点:

$ ntpdate -u speedo1
  12 Apr 13:52:06 ntpdate[21596]: step time server 9.26.54.6 offset 8.096963 sec

其中 speedo1 是充当时钟同步服务器的机器。

Windows Performance Monitor

默认情况下,所有 Windows 机器上都安装了 Windows Performance Monitor,可以使用它来监控各种系统资源。

rstatd

rstatd 工具用于从 Linux 和 Unix 操作系统中收集一些基本监控数据。这些数据包括:

  • 运行队列中的作业的平均数量
  • IOWait/Idle/System/User CPU Time
  • 所有界面上可以看见的所有冲突
  • 所有上下文切换
  • 总磁盘传输
  • 所有界面上的所有入站/出站错误
  • 所有界面上的所有入站/出站包
  • 所有中断
  • 已页入/页出的总 VM 页面
  • 已转入/转出的总 VM 页面

安装 rstatd

大多数 Unix 系统上都预先安装了 rstatd。要启动 rstatd 守护程序,请键入:

$ rpc.rstatd

对于 Linux 操作系统,可以在以下位置找到 rstatd 的开源版本:http://rstatd.sourceforge.net/。 要安装 rstatd,请键入以下内容:

$ tar xvf rpc.rstatd-4.0.1.tar
$ cd rpc.rstatd-4.0.1/
$ ./configure
$ make
$ make install

之后,请键入下列内容启动它:

$ rpc.rstatd

要使用 rstatd 监控 RPT 中的资源,请打开性能测试的 Resource Monitoring 选项卡,选择使用 UNIX rstatd 监视器,然后选择要收集的计数器。图 11 显示了这些步骤:


图 11. 启动 rstatd 性能监控计数器
启动 rstatd 性能监控计数器

要查看运作中的监控情况,请在运行测试的时候打开性能报告的 Resources 选项卡。您可以看到如下所示的图表,上面绘制了数据库机器上的 Idle、System、IOWait 和 User CPU 时间:


图 12. 使用 rstatd 实现 RPT 资源监控
使用 rstatd 实现 RPT 资源监控

IBM Tivoli Performance Monitoring

IBM Tivoli Monitoring 为监视器提供了更丰富的度量指标集,可以使用它们从测试环境中收集 rstatd 没有收集的额外的性能度量指标。可以安装不同类型的 ITM 监控代理,比如 Tivoli OS Monitoring、Tivoli Monitoring for Databases 或 Tivoli Monitoring for Applications,提供进一步的深层资源监控。

安装 IBM Tivoli Performance Monitoring

在安装 Tivoli Monitoring 之前,应该选择一台机器充当监控服务器。对于我们的测试环境,我们选择使用数据库机器。

要在 Unix/Linux 上安装监控服务器,请执行以下步骤:

  1. 将安装包复制到机器上并运行 install.sh script
  2. 为监控服务器选择一个安装目录
  3. 选择将产品安装到本地主机并接受许可协议
  4. 选择您的 OS 并选择安装 Tivoli Enterprise Monitoring Server (TEMS)
  5. 选择一个 TEMS 名称并完成安装

要启动监控服务器,请使用 cd 命令转向监控服务器主目录的 bin 目录,并执行 itmcmd (使用您的 TEMS 名称替换 MORTAL_HUB):
$ /home/adm22237/ITM/bin/itmcmd server start MORTAL_HUB
  Starting TEMS...
  TEMS started...

接 下来应该将每台机器上的监控代理安装到监视器上。Tivoli OS 监控代理以及包含 Tivoli 监控服务器安装的大多数安装包都已包括在内。其他监控代理,比如 Tivoli Monitoring for Databases 或 Tivoli Monitoring for Applications,可能需要单独下载。

要在 Unix/Linux 上安装监控代理,请执行以下步骤:

  1. 将代理安装包复制到机器上并运行 install.sh script
  2. 为监控代理选择安装目录
  3. 选择将产品安装到本地主机并接受许可协议
  4. 选择您的 OS 并选择安装监控代理
  5. 按照指令完成安装。

在启动代理之前,首先必须配置它,将它连接到监控服务器。要实现这一点,请使用 itmcmd 命令:
清单 1. 连接到监控服务器
$ /home/adm22237/ITM/bin/itmcmd config -A ux
  Agent configuration started...
        
  Will this agent connect to a TEMS? [YES or NO] (Default is: YES):
  TEMS Host Name (Default is: mortal): mortal
        
  Network Protocol [ip, sna, ip.pipe or ip.spipe] (Default is: ip.pipe):
        
  Now choose the next protocol from one of these:
  - ip
  - sna
  - ip.spipe
  - none
  Network Protocol 2 (Default is: none):
  IP.PIPE Port Number (Default is: 1918):
  Enter name of KDC_PARTITION (Default is: null):
        
  Configure connection for a secondary TEMS? [YES or NO] (Default is: NO):
  Enter Optional Primary Network Name or "none" (Default is: none):
  Are you installing this product into a clustered environment(Default is: NO):
  Agent configuration completed...

应该使用您的代理 ID 替换其中的 ux 。此 ID 基于代理类型和 OS,并且是惟一的。要查找代理 ID,可以使用 cinfo 命令:


清单 2. 查找代理 ID
$ /home/adm22237/ITM/bin/cinfo –I
        
  *********** Thu Apr 12 10:25:41 EDT 2007 ******************
  User      : mikezliu     Group: build pdxdb2
  Host name : mortal       Installer Lvl: 610 / 100
  CandleHome: /home/adm22237/ITM
  ***********************************************************
  ...Product inventory
        
  a4      Monitoring Agent for i5/OS
  tms     Version: 06.10.02.00
        
  ax      IBM Tivoli Monitoring Shared Libraries
  aix513  Version: 06.10.02.00
  aix516  Version: 06.10.02.00
        
  jr      Tivoli Enterprise-supplied JRE
  aix513  Version: 400 Rel: 100
  aix516  Version: 400 Rel: 100
        
  lz      Monitoring Agent for Linux OS
  tms     Version: 06.10.00.00
        
  ms      Tivoli Enterprise Monitoring Server
  aix513  Version: 06.10.02.00
        
  nt      Monitoring Agent for Windows OS
  tms     Version: 06.10.02.00
        
  sh      Tivoli Enterprise Monitoring SOAP Server
  aix513  Version: 06.10.02.00
        
  sy      Summarization and Pruning Agent
  tms     Version: 06.10.02.00
        
  tm      Monitoring Agent for IBM Tivoli Monitoring 5.x Endpoint
  tms     Version: 06.10.02.00
        
  ud      Monitoring Agent for DB2
  aix516  Version: 06.10.00.00
  tms     Version: 06.10.00.00
        
  ui      Tivoli Enterprise Services User Interface
  aix513  Version: 06.10.02.00
  aix516  Version: 06.10.02.00
        
  ul      Monitoring Agent for UNIX Logs
  tms     Version: 06.10.02.00
        
  um      Universal Agent
  tms     Version: 06.10.02.00
        
  ux      Monitoring Agent for UNIX OS
  aix516  Version: 06.10.02.00
  tms     Version: 06.10.02.00

按照指令,在提示的时候输入 Tivoli 监控服务器的主机名。

根据安装的监控代理的类型,可能需要将该代理的支持安装到监控服务器上。对于我们的集群,我们为 Unix/Linux 上的 DB2 的监控代理添加了支持,该支持将添加到监控服务器中,如下所示:

  1. 停止监控服务器:
    $ /home/adm22237/ITM/bin/itmcmd server stop MORTAL_HUB
      Stopping TEMS...
      TEMS stopped...

  2. 将代理安装包(包含用来将代理支持添加到监控服务器上的安装文件)复制到监控服务器机器上并运行 install.sh script
  3. 选择监控服务器的安装目录
  4. 选择将产品安装到本地主机并接受许可协议
  5. 选择您的 OS 并选择安装 Tivoli Enterprise Monitoring Server Support for Databases
  6. 按照指令完成安装
  7. 启动监控服务器:
    $ /home/adm22237/ITM/bin/itmcmd server start MORTAL_HUB
      Starting TEMS...
      TEMS started...

  8. 通过键入以下内容将监控代理支持添加到服务器:
    $ /home/adm22237/ITM/bin/itmcmd support -t MORTAL_HUB ud
      Copying cat and attr data...
      Product support installation started...
      Product support installation completed...

    其中的 ud 应该使用您的代理 ID 替换(可以使用 cinfo 命令查找 ID)。

还应该将以下补丁应用于 Tivoli Monitoring Server 和 Tivoli Monitoring Agent,以增加对 DB2 V9 的支持:

DB2 6.1.0-TIV-ITM_DB2-LA0053 Agent Support Install (6.1.0-TIV-ITM_DB2-LA0053.tar)

要启动代理,请使用 itmcmd 命令。根据想要启动的代理类型,可能需要传入额外的选项。例如,要启动 Tivoli OS 监控代理,可以键入以下内容:

$ /home/adm22237/ITM/bin/itmcmd agent start ux
  Starting agent...
  Agent Started...

要启动用于 DB2 的 Tivoli 监控代理,则应该按照以下这些步骤操作:

  1. 以实例用户(例如 mikezliu)的身份登录
  2. 连接到数据库并启动监控代理:

    $ db2 connect to trade6db
                  
      Database Connection Information
                  
      Database server        = DB2/AIX64 9.1.2
      SQL authorization ID   = MIKEZLIU
      Local database alias   = TRADE6DB
                  
    $ /home/adm22237/ITM/bin/itmcmd agent -o mikezliu start ud
      Starting agent...
      Agent Started...

要使用 Tivoli 监控 RPT 中的资源,请打开性能测试的 Resource Monitoring 选项卡,选择使用 IBM Tivoli Monitoring,然后指定监控服务器的主机名:


图 13. 启动 Tivoli 资源监控
启动 Tivoli 资源监控

这之后,可以使用 Resource 选项卡选择要收集的计数器。


图 14. 使用 Resource 选项卡选择要监控的计数器
使用 Resource 选项卡选择要监控的计数器

在运行测试的同时打开性能报告的 Resource 选项卡,这样可以查看运作中的监控情况。图 15 举例说明了这些步骤:


图 15. 使用 Tivoli Monitoring for Databases 实现 RPT 中的资源监控
使用 Tivoli Monitoring for Databases 实现 RPT 中的资源监控

通过右键单击该图,可以用不同的方式对其进行自定义,比如添加和移除计数器。例如,如果只想查看缓冲池命中率,那么可以右键单击该图 -> Add/Remove Performance Counters -> Resource Monitoring Counter 并只选择池命中率计数器。然后此图将更新为只绘制该计数器:


图 16. 使用 Tivoli Monitoring for Databases 实现 RPT 中的资源监控
使用 Tivoli Monitoring for Databases 实现 RPT 中的资源监控



回页首


最佳实践汇总

规划测试环境拓扑

RPT 工作台和驱动程序机器: RPT 工作台应该安装在不同于工作负载驱动程序的单独机器上

驱动程序机器: 驱动程序的系统开销很高,应该独立于测试下的系统。

RPT 工作台

工作台堆大小: 对于较大的测试,应该增加默认工作台堆大小

日志级别: 对于实际性能运行,不应该将 RPT 调度执行组件的日志级别设置为 “WARNING” 以上

代理控制器

代理控制器的 JVM: 代理控制器应该使用与 RPT 打包在一起的 JVM

Linux/UNIX 上的打开文件的最大数量: 增加允许打开文件的最大数量

Windows 上的 tcpip 端口的最大数量: 增加允许的 tcpip 端口的最大数量

运行 RPT 性能测试

问题确定: 在性能运行期间,应该将问题确定日志级别调整为 “None”,或者调整为 “Severe” 并从每个用户组中抽取一名用户作为样本。

代理控制器上的 JVM 堆栈的堆大小: 对于大型测试,需要增加代理控制器上启动的 JVM 堆栈的堆大小

资源监控

系统时钟: 测试环境下的系统中的所有机器都应该有彼此同步的系统时间,以便资源监控使用正确时间戳





回页首


结束语

本 文描述了如何使用 IBM Rational Performance Tester 作为 DB2 环境中的性能测试和监控工具。RPT 提供了帮助用户执行性能测试的多种工具,从对监控工具的内置支持,到允许用户编写和执行他们自己的工作负载驱动程序脚本。使用 RPT 作为端到端性能测试工具可以极大提高生产率,简化性能测试过程以及从 DB2 测试环境中收集性能度量的过程。





回页首


致谢

作 者特别感谢 Kent Siefkes 和 Kevin Mooney,感谢他们在使用 Rational Performance Tester 作为工作负载驱动程序方面的帮助和建议,以及在最佳实践方面的一些建议。作者还要感谢 Joseph P Toomey、Kevin Mooney、Judy Liu 和 Adam Muise,感谢他们对本文提出的宝贵反馈意见。






回页首


下载

描述 名字 大小 下载方法 示例 RPT 性能测试项目
TradeProject.zip 7KB HTTP
关于下载方法的信息

 

 

http://public.dhe.ibm.com/software/rationalsdp/rpt_agt/61/html/612/nl/readme_zh_CN_612.html

Rational Performance Tester 6.1.2 工作台内存优化 <!-- webbot bot="PurpleText" PREVIEW="Defect 1102755" -->

不要在少于 768 MB 物理内存的系统上使用 Performance Tester。如果违反,您就可能遇到由于内存不足产生的性能降低和/或应用程序崩溃等情形,而且这样的配置不受支持。

在更新 Performance Tester 后,请调节系统的 JVM 堆大小。

要在 Windows 上执行此操作:

  1. 启动 Performance Tester。
  2. 单击窗口 > 首选项
  3. 展开“测试”树,并单击 Performance Test 工作台

会显示建议的 JVM 堆大小。将该数字输入到“Java 虚拟机堆大小”字段中,然后单击确定

设置 JVM 堆大小后,Performance Tester 可能无法在下次被启动时启动。这是由于内存过小或内存碎片严重的情况而引起的。关闭一些活动程序或停止一些服务可释放足够内存来允许 Performance Tester 启动。

如果内存仍然不够,请通过编辑配置文件,重新设置 JVM 堆大小。此 rationalsdp.ini 文件位于产品安装目录(缺省情况下为 C:\Program Files\IBM\Rational\SDP\6.0(Windows)和 /opt/IBM/Rational/SDP/6.0(Linux))中。请在文本编辑器(例如 Notepad)中打开该文件,然后查找以 VMArgs=-Xmx 开头后跟数字和 m 的行。这个数字应为您在“首选项”页面上为“Java 虚拟机堆大小”字段输入的数字。从配置文件除去该行可允许 Performance Tester 启动。

有关如何增大工作台上的内存分配的最新信息,和有关如何减少内存消耗的最佳实践,请参阅 IBM 技术说明 1221972“Rational Performance Tester 6.1.2 工作台内存优化”。要查找此技术说明,请单击帮助 > IBM Support Assistant ,然后单击显示选项 。选择 IBM 软件支持文档Rational Performance Tester ,然后搜索“工作台内存优化”。

end

分享到:
评论

相关推荐

    IBM Rational Performance Tester

    IBM Rational Performance Tester

    IBM Rational Functional Tester

    改进 Rational Functional Tester 启动应用程序的过程 基于Rational 的BS 架构软件自动化测试研究 使用Rational Functional Tester 完成自动化功能测试 详解IBM Rational Functional Tester 的工作原理

    详解IBM Rational Functional Tester 的工作原理.docx

    Rational Functional Tester (RFT) 是一款强大的自动化测试工具,主要应用于软件功能测试。它能够操控各种类型的被测应用程序,包括基于 Java、.Net、HTML 以及特定平台如 Siebel、SAP 和 Flex 的应用。要理解 RFT ...

    IBM Rational Functional Tester简介

    IBM Rational Functional Tester 简介 IBM Rational Functional Tester(RFT)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和 GUI 开发人员。使用 RFT,可以帮助测试人员轻松地完成自动化的功能...

    Essentials of IBM Rational Functional Tester, Java Scripting

    ### IBM Rational Functional Tester (RFT) 与 JavaScripting 基础 #### 课程概述 IBM Rational Functional Tester(简称RFT)是一款强大的自动化测试工具,主要用于功能和回归测试。它支持多种应用程序和技术栈,...

    IBM Rational Function Tester学生手册(英)

    ### IBM Rational Function Tester 学生手册关键知识点解析 #### 一、课程说明 **课程目标:** 本课程旨在帮助学员掌握IBM Rational Function Tester (RFT) 的基础操作与高级功能,以便能够有效地进行自动化功能...

    IBM Rational Performance Tester 5000个浮动license

    先安装IBM license server然后启动server,导入,就OK了,浮动的5000上限,貌似有效期是1个月

    介绍 IBM Rational Manual Tester V7.0

    IBM:registered: Rational:registered: Manual Tester 是用来促进测试步骤的重用,以及减少软件变更对手动测试维护活动的影响的工具。它还提供了丰富的支持图像和文档附件的文本编辑器,从而提高测试的可读性。最后...

    Rational Functional Tester for Terminal Application

    5. **集成与扩展性**:作为IBM Rational家族的一员,RFT能够与其他IBM Rational产品无缝集成,例如Rational Quality Manager等,从而实现更为全面的质量管理流程。 #### 五、应用场景示例 假设一家航空公司正在...

    IBM Rational 产品许可证(License)管理使用和优化

    IBM Rational 产品许可证(License)主要有四种类型:第一种是试用版的许可证,如从 developerWorks 上下载的使用版,一般只能用较短时间(如 30 天或 60 天);第二种是 Rational 公共许可证(Common Licensing),...

    Rational Performance Tester Install

    Rational Performance Tester是一款由IBM公司推出的强大性能测试工具,它专为软件应用系统提供负载和压力测试,确保在高并发、大数据量等复杂环境下的稳定性和性能。在本篇文章中,我们将详细介绍Rational ...

    IBM Rational Functional Tester 活用ガイド

    根据提供的文档信息,我们可以提取并总结出关于IBM Rational Functional Tester (RFT) 的一系列关键知识点。以下内容将详细解释文档中的各个章节,并提供对每个部分的深入理解。 ### 当指南的位置与价值 #### 1. ...

    IBM Rational 全套 License 支持 7.0、7.1 有效期至 2020-10-31日

    HOSTID=ANY vendor_info="|Rational XDE Tester (Evaluation)|" \ NOTICE="Living on the EDGE" ck=109 INCREMENT rose_ada_windows rational 6.0 31-dec-2020 uncounted \ CE7402D09DEF \ VENDOR_STRING=3121-...

    Internet Explorer针对Rational Functional Tester性能异常,出现错误或无法启用

    在使用IBM Rational Functional Tester(RFT)进行自动化测试时,可能会遇到与Internet Explorer浏览器的兼容性和性能问题。本文将详细探讨这些问题的症状、原因以及解决方法。 症状主要包括:在录制脚本时,...

    IBM Rational 培训资料

    IBM Rational 是一个强大的软件开发工具套件,由IBM公司提供,用于支持企业的应用程序生命周期管理(ALM)。这个培训资料可能包含了一系列关于如何有效利用IBM Rational工具进行高效软件开发和项目管理的知识。 IBM...

    Rational Performance Tester 8.1

    Rational Performance Tester(RPT)是IBM公司推出的一款强大的性能测试工具,主要用于模拟大量用户并发访问应用程序,以此来检测系统在高负载情况下的性能、稳定性和可扩展性。在Rational Performance Tester 8.1...

    如何利用Rational Performance Tester进行性能测试

    本文将详细介绍如何使用IBM的Rational Performance Tester进行性能测试,包括其基本概念、工作原理以及实施步骤。 Rational Performance Tester是IBM Software Group推出的一款强大的性能测试工具,它提供了一个...

    Examples:现成的示例展示了IBM Rational Integration Tester(RIT)和Rational Test Control Panel(RTCP)的功能

    RTCP允许您使用随IBM Rational Integration Tester(RIT)发布的虚拟服务来在IBM Rational Test Virtualization Server(RTVS)中创建,共享和部署虚拟化测试环境。 下图显示了如何在RTVS环境中部署RTCP。 该项目...

    Using Rational Performance Tester Version 7.pdf

    《使用Rational Performance Tester Version 7》一书深入探讨了IBM Rational Performance Tester(RPT)V7的功能与特性,以及如何将其应用于企业级应用的性能测试。本书由David Chadwick、Chip Davis、Mark Dunn等多...

Global site tag (gtag.js) - Google Analytics