基于网络的应用的性能评估的制作方法

文档序号:7639532阅读:273来源:国知局
专利名称:基于网络的应用的性能评估的制作方法
技术领域
本发明一般涉及评估应用的性能,具体来说,涉及评估基于网络 的应用的性能。
背景技术
部署诸如Siebel Call Center应用程序之类的基于网络的应用, 会产生许多基础架构挑战。例如,从容量的观点来看,特别难以在部 署前的阶段计划适当的网络容量。此外,从性能观点来看,也难以在 部署基于网络的应用之后确定性能问题的原因。
到目前为止,没有有效的解决这些挑战的解决方案。结果,当前 部署基于网络的应用不能够确定所有性能驱动程序,不能够现实地预 测随着网络条件的变化(例如,由于抖动、延迟、带宽和/或类似的情 况)最终用户可能接收到的响应时间等等。这些不能够会导致部署的 风险提高,最终用户的不满意度增大,对应用程序的信心不足,网络 基础架构的成本增大等等。
就这一点来说,需要用于评估基于网络的应用的性能的解决方案。

发明内容
本发明提供了一种用于评估基于网络的应用的性能的解决方案。 由应用执行的事务被分解成多个组元。在应用处理事务时,标识每一 个组元的一个或多个资源,并获取每一个标识的资源的性能数据。基 于性能数据,评估应用的性能。在一个实施例中,性能数据被编译到 可以被评估的性能图中。此外,也可以使用基线数据来标识潜在的问 题资源。更进一步,可以模拟网络,以获取基线数据,和/或在部署应 用之前评估其性能。如此,可以全面地评估应用的性能。
本发明的第一个方面提供了一种对基于网络的应用的性能进行评估的方法,该方法包括将基于网络的应用的事务分解为多个组元, 其中,所述多个组元包括客户端组元、网络组元以及服务器组元;标 识基于网络的应用所使用的多个资源,其中,所述多个资源包括客户 端组元资源、网络组元资源以及服务器组元资源;基于所述基于网络 的应用对事务的处理,获取所述多个资源中的每一个资源的性能数 据;以及基于所述性能数据,评估基于网络的应用的性能。本发明的第二个方面提供了一种用于对基于网络的应用的性能 进行评估的系统,该系统包括用于将基于网络的应用的事务分解为 多个组元的系统,其中,所述多个组元包括客户端组元、网络组元以 及服务器组元;用于标识基于网络的应用所使用的多个资源的系统, 其中,所述多个资源包括客户端组元资源、网络组元资源以及服务器 组元资源;用于基于所述基于网络的应用对事务的处理,获取所述多 个资源中的每一个资源的性能数据的系统;以及用于基于所述性能数 据,评估基于网络的应用的性能的系统。本发明的第三个方面提供了存储在计算机可读介质上的程序产 品,当执行时,使计算机基础架构能评估基于网络的应用的性能,该 程序产品包括用于使计算机基础架构能执行下列步骤的计算机程序 代码将基于网络的应用的事务分解为多个组元,其中,所述多个组 元包括客户端组元、网络组元以及服务器组元;标识基于网络的应用 所使用的多个资源,其中,所述多个资源包括客户端组元资源、网络 组元资源以及服务器组元资源;基于所述基于网络的应用对事务的处 理,获取所述多个资源中的每一个资源的性能数据;以及基于所述性 能数据,评估基于网络的应用的性能。本发明的第四个方面提供了一种部署用于对基于网络的应用的 性能进行评估的系统的方法,该方法包括提供计算机基础架构,可 适用于将基于网络的应用的事务分解为多个组元,其中,所述多个 组元包括客户端组元、网络组元以及服务器組元;标识基于网络的应 用所使用的多个资源,其中,所述多个资源包括客户端组元资源、网 络组元资源以及服务器组元资源;基于所述基于网络的应用对事务的处理,获取所述多个资源中的每一个资源的性能数据;以及基于所述 性能数据,评估基于网络的应用的性能。本发明的第五个方面提供了用于评估基于网络的应用的性能的 业务方法,该业务方法包括管理执行本发明的每一个步骤的计算机基 础架构;以及基于管理步骤,接收支付。本发明的第六个方面提供了一种生成用于对基于网络的应用的 性能进行评估的系统的方法,该方法包括获取计算机基础架构;以 及将用于执行本发明的每一个步骤的装置部署到计算机基础架构中。


现在将参考下面的附图,只作为示例,对本发明的实施例进行描 述,其中图1显示了根据本发明的实施例的用于评估基于网络的应用的性能的说明性环境;图2显示了对用户的总的体验有影响的说明性的组元组;图3显示了根据本发明的实施例的图1的客户端的比较详细的视图;图4显示了根据本发明的实施例的图1的应用服务器的比较 详细的视图;图5显示了根据本发明的实施例的其中网络模拟器模拟网络的 说明性环境;以及图6显示了根据本发明的实施例的可以执行的说明性处理步值得注意的是,本发明的附图不是按比例绘制的。附图只描述了 本发明的典型的方面,因此,不应该被视为限制本发明的范围。在附 图中,类似的附图标记代表在附图之间类似的元件。
具体实施方式
如上文所指出的,本发明提供了 一种用于评估基于网络的应用的 性能的解决方案。由应用执行的事务被分解成多个组元。在应用处理 事务时,标识每一个组元的一个或多个资源,并获取每一个标识的资源的性能数据。基于性能数据,评估应用的性能。在一个实施例中, 性能数据被编译到可以被评估的性能图中。此外,也可以使用基线数 据来标识潜在的问题资源。更进一步,可以模拟网络,以获取基线数 据,和/或在部署应用之前评估其性能。如此,可以全面地评估应用的 性能。请回到附图,图1显示了根据本发明的实施例的用于评估基于网络的应用30的性能的说明性环境。就这一点来说,环境10包括 可以执行基于网络的应用30的应用服务器14。如当前技术已知的, 应用服务器14包括处理器20,该处理器20执行诸如存储在存储 器22A和/或存储系统22B中的应用30之类的计算机程序代码。 在执行计算机程序代码时,处理器20可以从存储器22A、存储系统 22B,和/或输入/输出(I/O)接口 24读取数据和/或向其中写入数据。 总线26在应用服务器14中的每一个组元之间提供通信链路。I/O 设备28可以包括使用户能直接与应用服务器14进行交互的任何 设备或使应用服务器14能与诸如客户端16之类的一个或多个其 他计算设备进行通信的任何设备。应用服务器14只是用于执行应用 30的各种计算机基础架构的说明。例如,在一个实施例中,环境10 包括通过诸如网络、共享存储器等等之类的任何有线和/或无线通信链 路进行通信以执行应用30的两个或更多计算设备(例如,服务器群 集)。一般而言,用户17使用诸如浏览器32之类的在客户端16 上执行的应用程序来通过网络18与应用30进行交互。应该理解, 客户端16可以包括如为应用服务器14所示的相同组元(处理器、 存储器、I/O接口等等)。为了简便起见,没有单独地显示和讨论这 些組元。网络18可以包括一个或多个网络类型(例如,因特网、广 域网、局域网、虚拟专用网络等等)的任何组合。此外,客户端16与 网络18之间的通信和/或网络18与应用服务器14之间的通信可 以利用各种有线和/或无线传输技术和协议的任何组合。在任何情况下,应用服务器14和客户端16各自都可以包括能够执行计算机程序代码的任何通用计算产品。然而,应该理解,应用服务器14和客户端16只是可以执行本发明的各种处理步骤的各 种可能的等效的计算设备的代表。就这一点来说,在其他实施例中, 应用服务器14和/或客户端16可以包括任何包括用于执行特定功 能的硬件和/或计算机程序代码的专用的计算产品,包括专用和通用的 硬件/软件等等的组合的任何计算产品。在每一种情况下,可以分别使 用标准编程和工程技术来创建程序代码和硬件。在操作中,用户17与客户端16上的浏览器32进行交互, 以通过网络18向应用服务器14上的应用30发送数据/对数据的 请求,或从那里接收数据/对数据的请求。应用30处理数据/对数据 的请求,并通过网络18向客户端16发送数据/对数据的请求,以便 由浏览器32显示和/或处理。就这一点来说,图2显示了对用户17 的总的体验有影响的说明性的组元组。请参看图1和2, 一般而言, 有各种主观因素对总的用户体验有影响。例如,由用户17请求的内 容的感觉到的值会影响用户17愿意等待多长时间来接收这样的内 容(例如,用户将愿意为比较有价值的内容等待更长的时间)。另外, 用户17到达该内容所需要的导航量也会影响应用30的总的可用 性的感觉。就这一点来说,对于频繁地请求的信息,应用30 —般应 该需要较少的导航步骤。如本领域普通技术人员将认识到的,各种其 他主观因素也可以影响应用用户的体验。无论如何,主观的用户体验中的重要因素是执行某个操作(例如, 找到所需要的信息)所需的时间量。就这一点来说,应用30的总的 用户体验可以被量化为环境10的各种组元(例如,客户端16、网 络18以及应用服务器14)的性能的总和。对于客户端16,性能可 以通过执行将被显示/传递的数据的本地处理所需的时间量来度量。此 时间受诸如页面大小、图像的数量、本地高速緩存、本地通信带宽、 客户端16上的并行性的量、可以运行的其他应用程序、处理Java 脚本效率等等的影响。对于网络18,性能可以通过应用回合的总数 和每一个回合的网络延迟量来度量。"回合"("turn")是浏览器32和应用30之间的完整的通信(例如,后面是一个或多个响应的一个 请求)。网络延迟受网络18的通信负载量、网络18上的拥塞量、 网络18抖动(例如,随着网络18上的延迟的时间的变化)等等的 影响。对于应用服务器14,性能可以通过处理应用30的数据所需 的时间量来度量。此时间受诸如索引、高速緩存、并行性的量、用户 的总数、应用调整、服务器性能等等的影响。返回到图1,如上文所指出的,环境10可以评估应用30的性 能。就这一点来说,所显示的环境10包括计算机基础架构12,该 计算机基础架构12包括各种监视工具40A-C。具体来说,计算机基 础架构12包括每一个组元的监视工具40A-C。 一般而言,每一个监 视工具40A-C都可以获取当处理应用30的事务时使用的对应的组 元的一个或更多资源的性能数据50。此外,所显示的应用服务器14 包括评估系统42,该评估系统42使应用服务器14能基于性能数 据50评估应用30的性能。就这一点来说,所显示的评估系统42 包括问题模块44、配置模块46、性能模块48以及分析模块49。这 里将进一步地讨论这些系统/模块中的每一个系统/模块的操作。然而, 应该理解,如图1所示的各种系统/模块中的某些系统/模块可以独立 地、组合地实现,和/或存储在包括在计算机基础架构12中的一个或 更多单独的计算设备的存储器中。此外,还应该理解,也可以不实现 某些系统、模块和/或功能,也可以作为环境10的一部分包括另外的 系统、模块和/或功能。无论如何,本发明提供了一种用于评估诸如应用30之类的基于 网络的应用的性能的解决方案。可以在正在开发应用30时,作为应 用30的正在进行的监视的一部分,和/或响应一个或多个用户17所 报告的问题,进行评估。在后一种情况下,问题模块44可以接收用 户17的性能关注点。例如,用户17可以通知(例如,通过电话、 电子邮件等等)对应用服务器14进行管理的服务提供商,使用应用 30执行一个或多个亊务会花费过多的时间。服务提供商可以使用问 题模块44获取有关性能关注点的数据,如用户17和/或客户端16的标识、用户17的位置、正在由用户17执行的一个或多个事务, 等等。或者,用户17可以直接使用问题模块44提供数据,和/或问 题模块44可以自动地获取某些/所有数据。在任何情况下,配置模块46都可以配置计算机基础架构12以 在它执行事务时对应用30进行评估。就这一点来说,配置模块46 可以将每一个事务分解为用于执行事务的多个组元。在一个实施例中,组元包括客户端16组元、网络18组元以及应用服务器14组 元。然而,应该理解,可以包括一个或多个另外的组元。例如,配置 模块46可以将事务分解为多个网络18组元,每一个网络一个(例 如,局域网、因特网、服务器群集等等),通过这些组元进行通信。 配置模块46可以进一步标识在处理事务时应用30和浏览器32 所使用的资源集合。如这里所使用的,资源可以包括在处理事务时所 使用的计算机基础架构12中的各种计算元件中的某些元件或所有 元件。例如,资源可以包括存储器量、处理时间、通信带宽、消息等 等。这里讨论了资源的各种其他示例。然而,应该理解,本发明不仅 限于这些资源。要在应用30处理事务时对应用30进行评估,配置 模块46可以标识每一个组元中的至少一个资源。就这一点来说,配 置模块46可以标识至少一个客户端组元资源(例如,存储器、本地 带宽等等),至少一个网络组元资源(例如,带宽、消息等等)以及 至少一个服务器组元资源(例如,数据库管理器、Web服务器等等)。 配置模块46可以自动地标识资源集合中的某些资源/所有资源,和/ 或用户可以使用由配置模块46所生成的接口来标识资源集合中的 一个或多个资源。此外,配置模块46可以从另一个系统中获取资源 的集合,也可以从数据库中获取预先定义的资源的集合。在任何情况下,配置模块46配置计算机基础架构12以在应用 30和浏览器32正在处理事务时获取资源集合中的每一个资源的性 能数据50。具体来说,配置模块46可以配置一个或多个监视工具 40A-C以获取一个或更多对应的资源的性能数据50。监视工具 40A-C可以包括在环境10中实现的另外的硬件和/或软件,和/或被配置为获取性能数据50的资源的功能(例如,日志功能)。就这一 点来说,配置模块46可以提供一个或多个监视工具40A-C,以便在 对应的组元(例如,客户端、网络、服务器组元)上安装/执行。此外, 配置模块46可以安装和/或执行一个或多个监视工具40A-C和/或 配置一个或多个监视工具40A-C以获取所需的性能数据50。例如,图3显示了根据本发明的实施例的客户端16的比较详 细的视图。如这里所讨论的,浏览器32在客户端16上执行,并通 过网络18向应用30发送数据/从应用30接收数据(图1)。当 在客户端16上执行时,浏览器32使用诸如操作系统60、文件系 统62以及Java运行时环境64之类的各种资源。此外,可以使用 操作系统60来访问客户端16上的一个或多个额外的资源,如高速 緩沖存储器、虚拟存储器、处理器、I/O接口等等。结果,配置模块 46 (图l)可以配置客户端16以在事务正在被处理时获取每一个资 源的性能数据50 (图1)。就这一点来说,配置模块46 (图l)可以在客户端16上安装、 配置和/或执行一个或多个探测器34和/或一个或多个监视器36。探 测器34包括调查和/或测试资源的可操作状态的程序,而监视器36 包括获取一个或多个资源的性能数据50 (图1)的程序。此外,配 置模块46可以在客户端16上配置一个或多个资源,以生成具有所 需的详细程度的诸如日志之类的性能数据50。例如,配置模块46可 以提高特定资源记录的数据的详细程度。在任何情况下,因为浏览器32用于与应用30 (图1) 一起处 理事务,可以在客户端16上获取各种资源的性能数据50 (图1)。 例如,可以由一个或多个监视器36记录一个或多个操作系统参数 70。操作系统参数70可以包括,例如,高速緩冲存储器分配/使用、 页面大小/分配、处理器利用率、本地带宽等等。类似地,可以由,例 如,文件系统监视器基于由文件系统62执行的各种操作来生成文件 系统日志72。此外,可以由,例如,Java运行时环境62生成Java 日志74,该Java日志74可以包括由浏览器32利用Java运行时环境64的各种属性。返回到图1,配置模块46可以进一步配置计算机基础架构12 在应用30处理事务时获取有关网络18的性能数据50。就这一点 来说,所显示的计算机基础架构12包括连接到网络18的网络监视 工具40B。在一个实施例中,网络监视工具40B包括捕获和检查通 过网络18传输的数据包的网络分析器(例如,"嗅探器")。例如, 网络监视工具40B可以标识用于客户端16和应用服务器14之间 的通信的一个或多个用户会话。在此情况下,网络监视工具40B可 以为处理事务所需的消息跟踪传递的字节的数量、应用回合的数量。 此外,网络监视工具40B可以获取网络18的一个或多个网络条件, 如抖动、延迟、带宽等等,作为网络18的性能数据50。另外,配置模块46还可以配置计算机基础架构12以获取应用 服务器14上的一个或多个资源的性能数据50。例如,图4显示了 根据本发明的实施例的应用服务器14的比较详细的视图。与客户端 监视工具40A (图1)相同,服务器监视工具40C (图1)可以包 括任意数量的用于获取性能数据50的探测器34和/或监视器36。 此外,应用服务器14上的一个或多个资源可以包括用于独立于任何 探测器34和/或监视器36获取性能数据50的功能(例如,日志记 录功能)。与客户端16 (图l)相同,应用服务器14可以分别获 取应用服务器14上的操作系统60和文件系统62的性能数据 50,如操作系统参数70的集合和/或文件系统日志72。应用30也可以使用可以获取其性能数据50的各种其他类型 的资源。例如,应用30可以使用数据库服务器66从数据库中读取 数据/向数据库中写入数据。在此情况下,配置模块46 (图1)可以 配置数据库服务器66和/或另一个程序以生成查询trace 76。此外, 应用30可以使用Web服务器68通过网络18 (图1)并使用, 例如,超文本传输协议(HTTP)提供Web页面。在此情况下,配 置模块46可以配置Web服务器68和/或另一个程序以生成Web 服务器日志78。类似地,配置模块46可以配置应用服务器14以获取应用30所使用的对象管理器80的对象管理器日志卯以及应 用30所使用的Web引擎82的Web引擎日志92。对象管理器 80可以为数据库服务器66提供接口。另外,Web引擎82可以以 可扩展标记语言(XML)发送/接收消息,并可以与Web服务器68 进行连接。更进一步,应用30可以使用负栽平衡器84,该负载平 衡器84跨多个计算资源(例如,服务器群集中的服务器、处理器、 存储器、通信信道等等)地分布处理,数据等等。在此情况下,配置 模块46可以配置应用服务器14以获取负载平衡器日志94。返回到图1,应该理解,可以专门为问题事务的处理获取某些性 能数据50或所有性能数据50。就这一点来说,各种监视工具40A-C 中的一个或多个可以被配置为只在特定事务正在被处理时获取性能 数据50。在一个实施例中,监视工具40A-C标识事务的用户会话。 随后,可以向一个或多个监视工具40A-C提供用户会话,并利用一 个或多个监视工具40A-C来获取性能数据50。在此情况下,记录的 性能数据50详细程度的提高和/或任何性能数据50的生成可以只 限于事务的数据的处理/传递。然而,应该理解,某些监视工具40A-C 可以生成性能数据50,不管正在处理的特定事务是什么。在任何情况下, 一旦事务已经被计算机基础架构12处理完毕, 性能模块48可以获取性能数据50以供分析。具体来说,性能模块 48可以请求和/或接收性能数据50,性能数据50可以本地存储在客 户端16上、网络监视工具40B上和/或应用服务器14上的各种存 储位置上。如此,可以编译性能数据50,以便更加容易分析和/或更 加永久地存储。此外,性能模块48还可以基于性能数据50对应用30和/或 浏览器32的性能进行评估.就这一点来说,性能模块48可以生成 性能图52,该性能图52显示了应用30和浏览器32使用各种资 源的资源利用率,包括一个或多个资源的性能趋势分析等等。性能图 52可以包括多层的数据,在这些数据中,可以呈现性能的总览,用 户可以"向下钻取(drill down)"以获取一个或多个资源的性能数据50的更加具体的细节。例如,性能图52可以包括通过网络18传 递的应用回合的总数和字节的总数。当需要时,用户可以向下钻取, 以查看有关每一个应用回合的更多细节,如字节的数量、应用回合所 需的时间量等等。结果,性能图52可以使用户能发现一个或多个潜 在的问题区域,并获取有关潜在的问题区域的详细信息。此外,性能模块48还可以基于性能数据50和/或性能图52 对应用30的性能进行评估。在一个实施例中,性能模块48将性能 数据50和/或性能图52与应用30的基线数据54进行比较。基 线数据54可以包括在对事务进行处理的过程中在各个时间为一个 或多个组元获得的性能数据。或者,基线数据54可以包括在实验室 环境中获得的性能数据。就这一点来说,图5显示了其中网络模拟 器38用于模拟诸如网络18之类的网络的说明性环境110。具体来 说,网络模拟器38可以模拟可以预期在网络18中发生的各种网络 条件,如延迟、带宽、抖动等等。环境110可以被配置为获取如这 里讨论的客户端16和/或应用服务器14的性能数据50。随后,性 能模块48可以编译性能数据50,并作为基线数据54将它存储起 来。返回到图1,在部署应用30之前可以使用基线数据54。例如, 用户可以使用性能模块48来查看和分析基线数据54,以确定应用 30的响应时间、稳定性阈值等等。基于此分析,可以使用一个或多 个加速技术来改善应用30的性能,从而避免性能问题。如此,降低 了部署应用30的风险,将获得更加稳定的网络18,并将降低计算 机基础架构12的总成本。另外,将提高用户17的满意度和信任度。此外,分析模块49还可以基于对性能数据50的评估和/或性 能图52,确定计算机基础架构12中的一个或多个问题。就这一点 来说,分析模块49可以将性能数据50和/或性能图52的一个或多个异常与可以导致异常的( 一个或多个)可能的问题资源的集合关联。 例如,客户端16上所需的处理时间量的异常可能表示缺少充分的处 理存储器和/或通信资源。分析模块49可以在性能数据50和/或性能图52中不断向下钻取,以发现处理时间延长的可能的原因。此外, 分析模块49还可以生成用于改善问题资源的一个或多个解决方案(例如,提高功能、替换资源、降低对资源的依赖性等等)。在任何 情况下,分析模块49都可以呈现可能的问题资源和/或解决方案以便 显示给用户,和/或以已知方式向另一个系统传递它们。如这里所讨论的,本发明的一个实施例提供了 一种用于评估基于 网络的应用的性能的方法。就这一点来说,图6显示了根据本发明 的实施例的可以执行的说明性处理步骤。在步骤Sl中,使用图1的 环境10作为说明性示例,配置模块46可以将事务分解为多个组元(例如,客户端组元、网络组元、应用服务器组元)。在步骤S2中, 配置模块46可以标识在处理事务时应用30和/或浏览器32所使 用的每一个组元中的一个或多个资源。在步骤S3中,配置模块46 可以配置计算机基础架构12以在处理事务时获取每一个资源的性 能数据50。在步骤S4中,应用30和/或浏览器32可以处理事务。 在步骤S5中,性能模块48可以对性能数据50进行评估。在步骤 S6中,分析模块49可以基于对性能数据50的评估,确定一个或 多个问题资源,而在步骤S7中,分析模块49可以生成用于改善事 务处理的一个或多个解决方案。尽管作为用于对基于网络的应用的性能进行评估的方法和系统 显示和描述了本发明,但是,本发明进一步提供各种备选实施例。例 如,在一个实施例中,本发明提供了计算机可读介质,该介质包括计 算机程序代码以使计算机基础架构能对基于网络的应用的性能进行 评估。就这一点来说,计算机可读介质包括诸如评估系统42 (图1) 之类的实现这里所描述的各种处理步骤中的一个或多个的程序代码。 应该理解,术语"计算机可读介质"包括一个或多个任何类型的程序代 码的物理实施例。具体来说,计算机可读介质可以包括在一个或多个 便携式存储产品中(例如,压缩光盘、磁盘、磁带等等),在计算设 备的一个或多个数据存储部分,如存储器22A (图1)和/或存储系 统22B(图1)(例如,固定盘、只读存储器、随机存取存储器、高速緩冲存储器等等),和/或作为通过网络传输的数据信号(例如,在 程序代码的有线/无线电子分发过程中)实现的程序代码。在另一个实施例中,本发明提供了根据预订、广告和/或费用执 行本发明的处理步骤的业务方法。即,诸如应用程序服务提供商之类 的服务提供商,可以提供评估这里所描述的基于网络的应用的性能的 服务。在此情况下,服务提供商可以管理(例如,创建、维护、支持等等)诸如应用服务器14 (图1)之类的为一个或多个客户执行这 里所描述的一个或多个处理步骤的计算机基础架构。作为回报,服务 提供商可以根据预订和/或费用协议从客户那里收取费用,和/或服务 提供商可以从向一个或多个笫三方销售的广告版面中收取费用。在再一个实施例中,本发明提供了 一种用于生成用于评估基于网 络的应用的性能的系统的方法。在此情况下,可以获取(例如,创建、 维护、使可用,等等)诸如应用服务器14 (图1)之类的计算机基 础架构,可以获取(例如,创建、购买、使用、修改等等)用于执行 这里所描述的处理步骤的一个或多个系统,并部署到所迷计算机基础 架构中。就这一点来说,每一个系统的所述部署都可以包括下列各项 中的一个或多个(1)从计算机可读介质中在诸如应用服务器14之 类的计算设备上安装程序代码;(2)向所述计算机基础架构中添加一 个或多个计算设备;以及(3)集成和/或修改所述计算机基础架构的 一个或多个现有的系统,使所述计算机基础架构能执行这里所描述的 一个或多个所述处理步骤。如这里所使用的,应该理解,术语"程序代码"和"计算机程序代 码,,是同义的,是指,以任何语言、代码或注释表达的一组指令的任 何表达式,用于导致具有信息处理能力的计算设备直接执行或者在下 列操作中的任何组合都执行之后执行特定的功能(a)转换到另一种 语言、代码或注释;(b)以不同的材料形式再现;和/或(c)解压缩。 就这一点来说,程序代码可以作为一种或多种程序产品类型来实现, 如应用程序/软件程序、组元软件/函数的库、操作系统、特定计算和/ 或I/O设备的基本I/O系统/驱动程序等等。另外,如这里所使用的,术语"系统"和"模块"是同义的,是指用于执行特定的功能的硬件和/ 或软件的任何组合。前面的对本发明的各个方面的描述只是为了说明和描述。它不是 详尽的说明或将本发明限于所说明的准确的形式,显然,许多修改方 案和变化也是可以的。对那些精通本技术的人员显而易见的这样的修 改和变化也包括在如所附带的权利要求所定义的本发明的范围内。
权利要求
1.一种对基于网络的应用的性能进行评估的方法,所述方法包括将所述基于网络的应用的事务分解为多个组元,其中,所述多个组元包括客户端组元、网络组元以及服务器组元;标识所述基于网络的应用所使用的多个资源,其中,所述多个资源包括客户端组元资源、网络组元资源以及服务器组元资源;基于所述基于网络的应用对所述事务的处理,获取所述多个资源中的每一个资源的性能数据;以及基于所述性能数据,评估所述基于网络的应用的性能。
2. 根据权利要求1所述的方法,进一步包括基于所述评估确 定问题资源。
3. 根据权利要求1所述的方法,进一步包括生成用于改善所 述问题资源的至少一个解决方案。
4. 根据权利要求1所述的方法,其中,所述获取步骤包括模 拟所述网络组元的环境。
5. 根据权利要求1所述的方法,其中,所述评估步骤包括将 所述性能数据与从所述网络组元的模拟的环境获得的性能数据进行 比较。
6. 根据权利要求1所述的方法,进一步包括配置至少一个监 视工具,其中,所述至少一个监视工具获取所述多个资源中的至少一 个资源的性能数据。
7. 根据权利要求1所述的方法,进一步包括接收性能关注点, 其中,响应所述性能关注点,执行所述获取步骤。
8. 根据权利要求1所述的方法,其中,所述获取步骤包括提 高至少一个资源的日志记录详细程度。
9,根据权利要求1所述的方法,进一步包括标识所述事务的 用户会话,其中,所述获取步骤进一步基于所述用户会话。
10. —种对基于网络的应用的性能进行评估的系统,所述系统包 括用于执行权利要求1到9中的任何一个权利要求所述的步骤的 装置。
11. 一种存储在计算机可读介质上的程序产品,当执行时,使计 算机基础架构能评估基于网络的应用的性能,所述程序产品包括用于 使所述计算机基础架构能执行权利要求1到9中的任何一个权利 要求所述的步骤的计算机程序代码。
全文摘要
本发明提供了一种用于评估基于网络的应用的性能的解决方案。由应用执行的事务被分解成多个组元。在应用处理事务时,标识每一个组元的一个或多个资源,并获取每一个标识的资源的性能数据。基于性能数据,评估应用的性能。如此,可以全面地评估应用的性能。
文档编号H04L12/26GK101258708SQ200680032543
公开日2008年9月3日 申请日期2006年9月4日 优先权日2005年9月9日
发明者K·查威达 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1