基于 WebSphere Application Server 的应用程序的软件性能测试规划

发表于:2009-03-25来源:作者:点击数: 标签:性能测试SERVERWebsphereApplicationWebSphere
在本文中,Alexandre Polozoff 提供对基于 WebSphere Application Server 的应用程序进行 性能测试 的规划,其中有关于规划、建立性能环境、进行实际的测试和测量应用程序的特征的信息。性能测试是确定应用程序在各种负载情景中的(JVM、连接池等)最佳设置的
在本文中,Alexandre Polozoff 提供对基于 WebSphere Application Server 的应用程序进行性能测试的规划,其中有关于规划、建立性能环境、进行实际的测试和测量应用程序的特征的信息。性能测试是确定应用程序在各种负载情景中的(JVM、连接池等)最佳设置的唯一方式。每个应用程序是不同的且在不同的条件下的行为也不同,这意味着所有应用程序在生产环境中被实现前必须经历性能测试活动。
© Copyright International Business Machines Corporation 2002.All rights reserved.

引言

        protocol(规划)一词被定义为“科学的或医学的实验、处理或过程的详细规划”。本文提供对基于 WebSphere® Application Server 的应用程序进行性能测试的规划,其中有关于规划、建立性能环境、进行实际的测试和测量应用程序的特征的信息。

        性能测试是确定应用程序在各种负载情景中的(JVM、连接池等)最佳设置的唯一方式。每个应用程序是不同的且在不同的条件下的行为也不同,这意味着所有应用程序在生产环境中被实现前必须经历性能测试活动。

性能测试环境       

在理想的情况下,性能测试环境应在每个细节(从服务器防火墙和后端资源的数量到网络电缆的规格)上完全模仿生产环境。然而,由于大容量生产环境的大小和规模,这是不实际的。包括最少两台或三台在物理上分离的 WebSphere Application Server 机器的更小的环境是更典型的性能测试的基本配置。


图 1. 基本的性能环境

 

        如图 1 所示,分布式空间中的基本的性能环境有两台连接到远程数据库并由一台远程 HTTP 服务器驱动的在物理上分离的 WebSphere Application Server。

        如果 HTTP 服务器在应用程序的生产环境中是远程的,那么最好使性能环境中的 HTTP 服务器也是远程的。每台 WebSphere Application Server 在自己的节点上独立运行。运行与测试无关的其他应用程序将引入针对本地 CPU、内存和磁盘资源的竞争。这不仅会影响测试的结果,而且这些应用程序与环境的资源的交互是难以估量的。

        这两台 WebSphere Application Server 至少应该有相同的机器和 OS 级别的配置。常见的错误包括一台或另一台应用程序服务器使用不同的 OS 补丁或修订包级别或不同的内存配置,这将导致不一致的结果和/或行为。作为题外话,请您一定要确保每台服务器的 TCP/IP 堆栈设置完全相同,尤其是 NIC 卡的双工设置。

        在理想的情况下,虽然应用程序数据不必驻留在与管理资源库相同的数据库服务器上,但是管理资源库的所有应用程序数据和数据库将驻留在一台远程的机器上。如果启用了 HTTP 会话持久性,请确保会话表与其他数据库分离且被标记为 VOLATILE。

        这并不是说把完全不同的配置用于性能环境是完全不可接受的。在当今的商业环境中,HTTP 服务器常常驻留在每个本地的 WebSphere Application Server 节点上。然而,其中一台 WebSphere Application Server 还作为管理资源库的数据库从而肩负双重责任是不太合乎需要的。这些配置特征和其他配置特征违反了“应用程序不应该参与本地资源的竞争”的约束。性能环境中的这些不平衡可能使最终结果不准确,在许多时候确实如此。然而,虽然折衷的性能测试环境肯定不是更好的选择,但是拥有几乎任何类型的性能测试环境都要比没有环境好。

专用的服务器环境

        显然,测试环境应尽可能地与生产环境相似,因为任何差异(任何方面的差异)将引入不确定性。如果您缩小测试环境,那么您必须扩大结果以取得生产环境中的近似数字。类似地,如果 HTTP 服务器在生产中是独立的,但在测试中被包括在应用程序服务器节点上,那么取得的性能结果也不能准确地反映生产中的结果。配置测试环境是作出选择和让步以获取可能取得的最精确的数据的过程。

     

原文转自:http://www.ltesting.net