用于选择性地监视事务的方法和系统的制作方法

文档序号:6611403阅读:155来源:国知局
专利名称:用于选择性地监视事务的方法和系统的制作方法
技术领域
本发明一般地涉及用于监视软件性能的改进的数据处理系统,并且 更特别地涉及选择性地监视所实现的软件应用中的个别事务。
背景技术
性能监视常常在对系统中的软件使用进行优化时使用。性能监视器 通常被当作并入处理器的工具,用以通过及时地确定特定时间点的机器 状态来分析系统的选定特征。监视系统性能的 一种方法是使用基于事务 的观点来监视系统。以这种方式,性能监视器可以通过跟踪事务执行路 径来获得最终用户体验,以定位问题发生的位置。因此,在确定系统是 否提供了所需服务时可以将最终用户的体验纳入考虑之中。系统管理中的关4建任务是监视软件应用的性能和可用性,包括那些 可能遍布于涉及多个物理资源的多个物理系统上的软件应用的性能和可用性。典型地,该监视通过下述操作来执行将软件实现为包括称作"探 测器"的附加指令,报告诸如应用响应时间的性能信息。性能监视还可 以通过向在事务执行期间协调调用的应用中加入有时称为插件的附加软 件组件来在企业中实现。由于实时地执行监视,任何这样的监视都会给 受监视系统造成某种程度上的运行时性能开销。因此,重要的是提供一 种控制机制来以适当的粒度配置监视活动。当前有两种用于控制性能开销的主要途径。第一种途径包括基于应 用或逻辑组件选择性地打开或关闭监视。例如,当用户从Web浏览器发 起事务时,将请求发送给Web服务器,Web服务器接着对应用服务器和 数据库服务器进行呼叫。传统地,如果用户已经体验到性能问题,则对 在Web服务器、应用服务器和数据库服务器上运行的整个应用进行监 视,以便查明问题的根本起因。然而,这种基于应用的途径有两个主要
缺点。当对应用启动事务监视时,将监视在该应用中的所有商务事务, 无论其是否与识别性能瓶颈有关。这种全包括式的监视招致就CPU使用 率、存储器等而言比解决问题所需的更多的开销。此外,当针对应用启 动事务监视时,该应用中的每个事务将产生同一水平的附加监视信息。 在较短时间段内,累积的数据量可能变得非常高,由此招致处理数据的 附加开销。控制性能开销的第二种途径是将每种商务事务与包含应当被用于个别事务的整个监视配置的"令牌"相关联。在2004年10月22日提交的 题目为"INTELLIGENT PERFORMANCE MONITORING BASED ON USER TRANSACTIONS "、序列号为10/971,472 (律师存档号为 AUS920040420US1 )的共同未决的美国专利申请中公开了这种方法。每 个实现的应用具有用于将被监视的请求(商务事务)的入口点(例如, http:〃www.ibm.com/buyComputers)。 一旦4十^于应用定义了该入口点,则 监视策略与这些入口点相关联。监视策略表示为令牌,其包含监视事务 所需的所有信息。然而,这种途径的缺点在于除了预定的采样率,没有 其他的控制机制用于确定事务应当何时受到监视。由于在不受到监视的 商务事务期间系统中可能会发生异常,因此这种控制缺失会引起问题。发明内容、'、、i曰八 、 狀、 、、、A; 、务的计算机实现方法、数据处理系统和计算机程序产品。响应于在入口 点接收到新事务,检查监视策略以确定该监视策略是否表明了该事务应 当被监视。如果该监视策略表明该事务应当被监视,则确定系统资源是 否操作于在该监视策略中定义的预定系统条件之下。如果系统资源操作 于预定系统条件之下,则该事务将被监视。如果系统资源没有操作于预 定系统条件之下,则该事务将不被监视。


所附的权利要求中阐述了相信是本发明特有的新颖性特征。然而,
参考以下关于一个示例性实施例的详细描述并结合附图来阅读,将能够 最好地理解本发明本身以及优选的使用模式、其他目的及其优点。附图 中图1是其中可以实现本发明的各方面的分布式数据处理系统的图示;图2是其中可以实现本发明的各方面的数据处理系统的框图; 图3是根据示例性实施例的用于选择性地监视个别事务的示例性组 件的框图;图4是示出根据示例性实施例使用监视策略中的度量来识别需要监 视的事务的框图;以及图5是一个流程图,示出了根据示例性实施例用于选择性地监视实 现的软件应用中的个别事务的处理。
具体实施方式
现在参照附图,特别是参照图1-图2,提供了其中可以实现示例性 实施例的数据处理环境的例图。应当理解,图l-图2仅是示例性的,并 不意在宣称或暗示关于可以在其中实施不同实施例的环境的任何限制。 可以对所示的环境进行多种修改。现在参考附图,图1示出了其中可以实现示例性实施例的数据处理 系统的网络的图示。网络数据处理系统100是其中可以实现实施例的计 算机的网络。网络数据处理系统100包含网络102,网络102是用于提 供在网络数据处理系统100内连接在一起的各种设备与计算机之间的通 信链路的中介。网络102可以包括诸如有线、无线通信链路或光纤电缆 之类的连接。在所示的例子中,服务器104和服务器106连同存储单元108 —起 连接到网络102。此外,客户端IIO、 112和114连接到网络102。这些 客户端110、 112和114例如可以是个人计算机或网络计算机。在所示的 例子中,服务器104提供诸如引导文件、操作系统映像和应用之类的数 据给客户端110、 112和114。在本例中,客户端110、 112和114是服
务器104的客户端。网络数据处理系统100可以包括未示出的附加服务 器、客户端和其他设备。在所示的例子中,网络数据处理系统100是具有代表使用传输控制 协议/网际协议(TCP/IP )协议组彼此进行通信的网络和网关的世界范围 的组合的网络102的因特网。在因特网的中心位置是主结点或主机之间 的高速数据通信线路的骨干,包括对数据和消息进行路由的成千上万的 商业、政府、教育和其他计算机系统。当然,网络数据处理系统100还 可以被实现为多个不同类型的网络,例如内部网、局域网(LAN)或广 域网(WAN)。图1意在作为例子,而不是对不同实施例的体系结构限 制。现在参考图2,示出了能够实现示例性实施例的数据处理系统的框 图。数据处理系统200是计算机的例子,诸如图1中的服务器104或客 户端110,针对示例性实施例实现处理的计算机可用代码或指令可以位 于其中。在所示的例子中,数据处理系统200利用包括北桥和存储控制器集 线器(MCH) 202以及南桥和输入/输出(I/O)控制器集线器(ICH) 204 的总线体系结构。处理器206、主存储器208和图形处理器210连接到 北桥和存储控制器集线器202。例如,可以经由一个加速图形端口 ( AGP ) 将图形处理器210连接到MCH。在所示的例子中,局域网(LAN)适配器212连接到南桥和I/O控 制器集线器204,并且音频适配器216、 4建盘和鼠标适配器220、调制解 调器222、只读存储器(ROM) 224、通用串行总线(USB)端口和其它 通信端口 232、以及PCI/PCIe装置234经由总线238连接到南桥和I/O 控制器集线器204,硬盘驱动器(HDD) 226和CD-ROM驱动器230 经由总线240连接到南桥和I/O控制器集线器204。 PCI/PCIe装置可能 包括例如,以太网适配器、插入卡、以及笔记本计算机的PC卡。PCI 使用卡总线控制器,然而PCIe不用。例如,ROM 224可能是闪速二进 制输入/输出系统(BIOS )。例如,硬盘驱动器226和CD - ROM驱动器 230可能使用集成驱动电子元件(IDE)或串行高级技术附件(SATA)
接口 。可将超级I/0( SIO )装置236连接到南桥和I/O控制器集线器204。
图2中,操作系统在处理器单元206上运行,调整并且提供对数据 处理系统200内的多种组件的控制。操作系统可能是一个商业可得的操 作系统,例如Microsoft Windows XP ("Microsoft"和"Windows" 是微软公司在美国、其它国家或同时在美国和其它国家的商标)。面向对 象的编程系统,例如JaveTM编程系统,可能结合l乘作系统运行并且提供 从在数据处理系统200上执行的Java程序或应用对操作系统的调用 ("Java"和所有基于Java的商标是Sun Microsystem公司在美国、其它 国家或同时在美国和其它国家的商标)。
用于才喿作系统的指令,面向对象的编程系统,以及应用或程序都位 于诸如硬盘驱动器226的存储装置上,并且可以载入主存储器208供处 理器单元206处理。处理器单元206通过使用计算机实现指令来执行示 例性实施例的处理,计算机实现指令位于存储器中,例如位于主存储器 208、只读存储器224中,或位于一个或多个外围装置中。
图l-图2中的硬件可能依据实现而变化。作为对图l-图2中所示的 硬件的补充和替代,可以使用其它内部硬件或外围装置,例如闪存、等 效的非易失性存储器,或光盘驱动器等。同样,示例性实施例的处理也 适用于多处理器数据处理系统。
在一些示例性示例中,数据处理系统200可能是通常配置有闪存以 便为存储操作系统文件和/或用户产生的数据提供非易失性存储的个人 数字助理(PDA)。总线系统可能包括一个或多个总线,例如,系统总 线、I/O总线以及PCI总线。当然,可以使用在附在架构或体系结构上 的不同组件或装置间提供数据传输的任何类型的通信架构或体系结构来 实现总线系统。通信单元可能包括一个或多个用于发送和接收数据的装 置,例如,调制解调器或网络适配器。存储器例如可能是主存储器208 或例如位于北桥和存储控制器集线器202中的高速緩冲存储器。处理单 元可能包括一个或多个处理器或CPU。不能将图1 -图2中所示示例和 上述示例理解为暗示体系结构上的限制。例如,除采取PDA形式之夕卜, 数据处理系统200也可能是写字板计算机、膝上计算机或电话装置。诸如图1中的服务器104之类的一个或多个服务器可以提供电子商 务的Web服务以供诸如客户端108、 110和112之类的客户端设备访问。 在示例性实施例中,提供事务性能监视系统用于监视服务器及其企业后 端系统的组件的性能,以便提供代表在处理事务中的企业商务的性能的 数据。在一个示例性实施例中,该事务性能监视系统是IBM Tivoli Monitoring for Transaction Performance For Response Time Tracking (用于 响应时间跟踪的Tivoli事务性能监视)(ITCAMfRTT),其可以测量和 编译包括企业系统内部的各种组件的事务处理时间、所生成的错误消息 等等的事务性能数据。ITCAMfRTT是监视基于Web的服务和操作系统 应用的可用性和性能的一组中央管理软件组件。ITCAMfRTT捕获用于 所有电子商务事务的具体事务和应用性能数据。利用ITCAMfRTT,客 户事务经过主机、系统、应用、Web服务器和代理服务器、Web应用服 务器、中间件、数据库管理软件和传统后台管理(back-office)软件时 其每个步骤可以受到监视并且其性能特征数据在数据库中受到编译和存 储以用于历史分析和长期规划。ITCAMfRTT允许电子商务所有者有效 地测量在不同条件和不同时间用户体验到何种电子商务。更重要地是, 电子商务所有者可以在发生可用性问题时将性能源与可用性问题隔离 开,以便使这些问题在造成昂贵的支出和损失利润之前得到纠正。事务是由用户发起的计算机操作,并且这些用户事务可以包括下游 子事务。例^口,当用登录www.amazon.com 购书时,用户发起一个事 务。原始请求例如发送给Web服务器并且随后发送给诸如Java服务器 之类的应用服务器。事务可以进一步调用子事务形式的数据库操作。事 务还可以包括由原始用户请求发起的一连串子事务。这些用户请求可以 例如来自Web浏览器。每个实现的应用具有用于应当被监视的请求或事务的入口点。入口 点或边缘事务是事务被监视应用记录的在系统中的第 一个位置。例如, Web应用服务器可以满足Web页面请求,并且该请求可以被定义为统一 资源定位符(URL),诸如http:〃www.ibm.com/buycomputers。接收进入 HTTP请求的Web服务器插件可以识别这一 URL并检测该URL是否与
给定的监视策略匹配。可选地,插入到实现的JAVA应用服务器的探测 器可以解释所有的servlet请求并以类似的方式识别进入的HTTP请求和 URL。如果所识别的URL与给定的监视策略匹配,则将其记录为事务并 用于表示进入所监视的应用的入口点。其他可能的入口点包括Web服 务、远程方法调用(RMI)、 Java数据库连接(JDBC)、 Java连接体系结 构(JCA), Java消息服务(JMS)、 .NET、 shell脚本等上的事务。因此, 每个实现的应用可以具有用于将被监视的请求(即,Servlet、 EJB等) 的入口点。入口点在应用监视策略中定义。监视策略可以包括监视到达 服务器的每个事务或通过规定将被监视的事务的特定URL而监视选定 事务的策略。尽管现有的系统允许管理员在应用监视策略中定义入口点以规定事 务将被监视的点,但示例性实施例通过使得所实现的软件应用中的个别 事务在更微小的水平上被监视,而改进了这种现有的监^L策略。示例性 实施例中的应用监视策略包括度量,该度量控制某一事务是否应当被监 视,并且如果应当被监视,什么时候应当开始监视。该度量由管理员定 义,并且可以包括对事务将经过的系统上已经被监视的各种系统资源的 描述。例如,这种受监视的系统资源可以包括但不限于例如给定服务器 上的空闲虚拟存储器量、CPU利用率、当前企业JavaBean (EJB)緩冲 池大小或当前线程池大小。应用监视策略中的度量还可以定义受监视资 源可以操作于其中的预定系统条件。预定系统条件是当事务经过资源时 可能对事务性能造成负面影响的任何条件。例如,如果受监视的资源操 作于预定的系统条件下,诸如操作于在监视策略中定义的可接受的阔值 水平以上,则度量可以规定该事务应当受到监视。相反,如果该受监视 的资源没有操作在预定的系统条件下,则事务将不被监视。因此,当应 用监视策略中的度量规定事务经过的服务器的CPU利用率应当受到监 视时,度量还可以进一步规定监视应当仅在CPU利用率才喿作于预定的系 统条件下诸如满足或超过限制或阈值水平时才发生。预定系统条件的其 他例子包括但不限于,服务器关闭、应用不可用或受限、应用在错误版 本下、数据库被锁定等。因此,应用监视策略中定义的度量为管理员提
供性能监视中的另 一 维度的控制并且可以用于减少实际事务监视的开 销。图3是根据示例性实施例用于选择性地监视分布式计算系统300中 的个别事务的示例性组件的框图。客户端302是诸如图1中的客户端 108、110和112的客户端的例子。服务器304是诸如图1中的服务器104 的应用服务器,并且可以作为组合的Web服务器/应用服务器来工作。 典型的应用服务器是基于J2EE的,运行EJB,或其他Java组件。EJB 组件在会话bean、实体bean和消息驱动bean中封装了商务规则和其他 功能。客户端302与服务器304进行通信以便获得对由后端企业计算系 统资源306提供的服务的访问。在本例中,客户端302向服务器304发送一个请求,这引起一个事 务被创建。该请求可以采取很多形式,包括但不限于HTTP、 Web服务、 EJB或JMS请求。服务器304充当在客户端请求和需要运行以提供所请 求服务的应用组件之间的中介。响应于接收到客户端请求,服务器304 解析该请求以获得URL。该URL用于建立作为参考的Web服务标识。 基于该URL,服务器304可以识别应当被运行以执行客户端请求的一个 或多个服务。服务器304通过调用适当的服务组件,诸如月良务器组件308、 310 或312来服务该请求,以处理该事务。服务器组件可以包括应用服务器、 Web服务器、数据库服务器或任何其他被服务的后端系统。此外,事务 性能监视系统314当服务器304和后端计算系统资源306处理该事务的 时候对他们进行监视。该性能监视包括收集和存储与服务器304和后端 计算系统资源306的各种组件的性能参数有关的数据。例如,监视性能 可以包括收集和存储与下述参数有关的信息特定组件处理事务所花费 的时间量、组件的比特率、SQL询问、包括Java虚拟机(JVM)中的类 名称和实例ID的组件信息、存储器利用率统计数据、该JVM的状态的 任何性质、该JAM的组件的任何性质和/或该系统总体上的任何性质等。当事务到达服务器304的目的入口点处时,插入到服务器304的字节码中的监视探测器,诸如探测器316的存在使得确定该特定事务是否
将被监视。探测器是为了监视或收集关于网络活动的数据而插入在网络 的关4建位置的程序。探测器插入到服务器上正在运行的程序的字节码中。探测器插入到加载到Java虚拟机(JVM)的很多类中。这些类的类型包 括但不限于实现企业Java Bean (EJB )、 Servlet、 Java服务器页面(JSP )、 HTTP服务器、Java消息服务器(JMS )、 Java数据库连接(JDBC )和 其他的类。探测器316通过检查与该入口点相关联的监视策略,诸如服务器304 中的监视策略318,来确定该特定事务是否要被监视。监视策略318内 的附加度量用于描述应当被监视的各种服务器资源,诸如,例如在该事 务将经过的系统上的给定服务器上的空闲虚拟存储器量、CPU利用率、 当前EJB緩冲池或线程池大小。该度量还可以进一步通过规定预定系统 条件来定义服务器资源的操作,并且如果满足了预定系统条件,则事务 将被监视。如果该资源操作于预定系统条件之下,则该资源可能潜在地 经历性能降级并且应当被监视。因此,如果资源没有操作于预定的系统 条件之下,则该事务将不被监视。可选地,根据监视策略,如果该资源 操作于预定的系统条件之下则该事务应当被监视。在一个实施例中,使用运行于受监视的服务器外部的程序可以获得 该受监视服务器的资源信息,该程序或者安装在同一物理机器上,或者 运行于不同的机器上,其产生由探测器使用的相关器。例如,在用于响 应时间跟踪的Tivoli事务性能监视(ITCAMfRTT)中,该程序是应用响 应测量(ARM)引擎。当新的事务到达服务器时,4采测器启动并从ARM 引擎请求相关器。在这一请求中,探测器向ARM引擎提供该新事务的 URL。如果该URL与监视策略相匹配,并且如果ARM引擎确定规定资 源的操作已经满足了预定系统条件,则ARM引擎向探测器提供相关器。 ARM引擎自身可以监视资源信息以确定资源是否满足了预定系统条件。 可选地,外部资源监视程序可以监视资源并将资源条件数据供给到ARM 引擎。一旦利用监视策略318中规定的系统资源信息确定了该事务是否应 当被监视,则探测器316返回此信息给事务性能监视系统314。如果该 信息表明该事务实例不应当被监视,则事务性能监视系统314不监视该事务。如果该信息表明该事务实例应当被监视,则事务性能监视系统314 中的探测器316以典型的方式监视该事务。以这种方式,字节码中插入 的探测器可以基于监视策略中的系统资源信息动态地确定事务是否应当 被监视。探测器检查监视策略中定义的资源信息以识别策略是否规定了件是否得到了满足。基于策略中定义的资源信息,允许事务性能监视系 统针对监视动态地包括或排除事务实例。换言之,策略中的系统资源度 量定义了事务是否应当被记录。服务器组件304和后端计算系统资源306的组件可以包括硬件或專欠 件组件。例如,这些组件可以包括主机系统、Java服务器页面、Servlet、 实体Bean、企业Java Bean、数据连接等。每个组件可以具有其自己的 性能特征集,其可以由事务性能监视系统314来收集和存储以便获得关 于企业系统处理事务情况如何的指示。服务组件308、 310和312各自包 含执行特定功能所必需的所有逻辑。可以通过使用企业JavaBean(EJB ) 容器320来进行对服务组件308、 310和312的调用。正如所述,服务组 件308、 310或312还可以接收来自父组件的请求(当服务组件本身不是 根服务时)。服务组件308、 310或312解释请求,执行所期望的功能并 向服务器304发送应答。这一应答随后被传递给客户端302。图4示出了根据示例性实施例在事务的监视策略中的系统资源度量 的示例性使用。测量工具或探测器监视应用中的入口点402。当事务的 执行到达入口点402时,与事务一并执行探测器并且探测器检查监视策 略404。监视策略404维护一个或多个监视策略的定义列表。监视策略 404尝试匹配进入请求中的所有关键参数,以便唯一地将事务与某个定 义的监视策略匹配。 一旦事务与某个定义的监视策略匹配,则探测器检 查该定义的监视策略,以确定该事务是否应当被监视。该定义的监视策 略包含诸如度量406的附加度量,其包括由管理员定义的系统资源信息。 基于在该监视策略中的该附加度量中的描述,如果满足该策略标准,则 探测器可以监视该事务408。例如,如果事务将经过特定的系统资源,
则由探测器检查该资源以确定该资源当前是否操作于预定的系统条件之 下,诸如是否操作于超过给定阈值的水平。如果该资源当前操作于预定 系统条件之下,则探测器将监视该事务。如果该资源没有操作于预定的 系统条件之下,则探测器不监视该事务。因此,使用监视策略中的附加 系统资源度量为管理员提供了监视事务中的另 一维度的控制。由于示例 性实施例实现了选择性地监视事务,因此可以使与监视事务相关联的计 算开销最小化,并且可以减少由事务监视引起的数据量。别事务的处理的流程图。图5所示的处理可以在数据处理系统诸如图3 的服务器304中实现。处理开始于客户端向服务器发送服务请求(步骤 502 )。新事务到达服务器的入口点("边缘")(步骤504 )。在服务器中, 监视探测器检查监视策略以确定该事务是否应当被监视(步骤506 )。监 视策略可以包括定义了在事务将经过的系统上被监视的各种系统资源的 度量。如果监视策略表明该事务实例不应当被监视(步骤506输出"否"), 则不监视该特定事务实例,并且处理随后结束。如果监视策略表明该事 务实例应当被监视(步骤506输出"是,,),则监视探测器确定该监视策 略中的定义的资源系统条件(如果有的话)在事务到达服务器的一刻是 否得到了满足(步骤508 )。如果监视探测器确定没有满足任何资源系统 条件(步骤508输出"否,,),则不监视该特定事务实例,并且处理随后 结束。如果监视探测器确定已经满足了某个预定系统条件(步骤508输 出"是,,),则探测器以常用的方式监视该事务(步骤510),并且处理随后结束。由于确定系统资源操作于在策略中预定的系统条件之下,因此 当事务经过该资源时,自该事务潜在地经历性能降级起实现的探测器开始监视该事务。本发明可以采用完全硬件实施例、完全软件实施例或包含硬件和软 件单元的实施例的形式。在优选的实施例中,本发明以软件的形式实现, 其包括但不限于固件、驻留软件、微代码等。此外,本发明可以采取可从计算机可用介质或计算机可读介质访
问的计算机程序产品的形式,该计算机可用介质或计算机可读介质提 供程序代码以供计算机或任意指令执行系统使用或结合计算机或任 意指令执行系统而使用。对于本说明书的目的,计算机可用介质或计 算机可读介质可以是任意可包含、存储、传送、传播或传输供指令执 行系统、设备或装置使用或结合指令执行系统、设备或装置而使用的 程序的有形设备。该介质可以是电子的、》兹的、光的、电》兹的、红外的或半导体的 系统(或设备、装置)或者传播介质。计算机可读介质的例子包括半导体或固态存储器(solid status memory)、磁带、可擦除的计算机磁 盘、随机存取存储器(RAM)、只读存储器(ROM)、硬盘以及光 盘。目前的光盘例子包括压缩光盘-只读存储器(CD-ROM)、压缩 光盘-读/写(CD-R7W)和DVD (数字视频光盘)。适合于存储和/或执行程序代码的数据处理系统可以包括直接地 或通过系统总线间接地连接到存储单元的至少 一个处理器。这些存储 单元可以包括在实际执行程序代码期间所使用的本地存储器,大容量 存储器(bulk storage ),以及对至少某些程序代码提供临时存储以便 减少在执行期间必须从大容量存储器中恢复代码的次数的高速緩存 存储器。输入/输出装置或I/0装置(包括但不限于键盘、显示器、指示装 置等)可以直接地或通过中间1/0控制器连接到系统。网络适配器同样可以连接到系统,以使得数据处理系统能够通过 中间的专用的或公共的网络而连接到其他数据处理系统或远端的打 印机或存储装置。调制解调器、电缆调制解调器(Cable Modem)和 以太网卡只是当前可用的几类网络适配器。已经提出的对本发明的描述的目的是进行说明和描述,而不是旨 在穷举或使本发明限于所公开的形式。本领域的普通技术人员可以容 易地想到各种修改和变更。选择和描述实施例是为了最好地说明发明 原理、实际应用,并使本领域的普通技术人员能够理解本发明还可以
权利要求
1.一种用于选择性地监视分布式计算系统中的事务的计算机实现方法,所述计算机实现方法包括响应于在入口点接收到新事务,检查监视策略以确定该监视策略是否表明了该新事务应当被监视;确定系统资源是否操作于预定系统条件之下;响应于确定所述系统资源操作于预定系统条件之下,监视该新事务。
2. 根据权利要求1所述的计算机实现方法,还包括响应于确定所述系统资源没有操作于所述预定系统条件之下,允许 该新事务作为不受监视的事务继续。
3. 根据权利要求1所述的计算机实现方法,其中所述确定所述系 统资源是否操作于所述预定系统条件之下的步骤还包括获得所述系统资源的性能信息;将所述性能信息与在所述监视策略中定义的预定系统条件进行比较。
4. 根据权利要求3所述的计算机实现方法,其中每当在所述入口 点处接收到所述新事务时确定性能信息。
5. 根据权利要求1所述的计算机实现方法,其中所述监视策略定 义将由所述事务经过的一个或多个系统资源。
6. 根据权利要求1所述的计算机实现方法,其中所述预定系统条 件是在所述监视策略中定义的阈值水平。
7. 根据权利要求1所述的计算机实现方法,其中所述系统资源包 括给定服务器上的空闲虛拟存储器量、CPU利用率、当前企业JavaBean 緩沖池大小或当前线程池大小中的至少一个。
8. 根据权利要求1所述的计算机实现方法,其中所述检查、确定 和监视步骤由所实现的监视探测器执行。
9. 根据权利要求1所述的计算机实现方法,其中所述监视策略中的所述系统资源由管理员定义。
10. —种用于选择性地监视分布式计算系统中的事务的数据处理系统,所述数据处理系统包括 总线;连接到所述总线的存储设备,其中所述存储设备包含计算机可用代码;连接到所述总线的至少 一个受管理的设备; 连接到所述总线的通信单元;以及连接到所述总线的处理单元,其中所述处理单元执行所述计算机可 用代码,响应于在入口点接收到新事务,检查监^见策略以确定该监—见策 略是否表明了该新事务应当被监视;确定系统资源是否操作于预定系统 条件之下;并且响应于确定所述系统资源操作于所述预定系统条件之 下,监视该新事务。
11. 根据权利要求IO所述的数据处理系统,其中所述处理单元还执 行所述计算机可用代码,以响应于确定所述系统资源没有操作于所述预 定系统条件之下,允许该新事务作为不受监视的事务继续。
12. 根据权利要求10所述的数据处理系统,其中所述用于确定所 述系统资源是否操作于所述预定系统条件之下的计算机可用代码还包 括用于获得所述系统资源的性能信息和用于将所述性能信息与在所述 监视策略中定义的预定系统条件进行比较的计算机可用代码。
13. 根据权利要求10所述的数据处理系统,其中所述预定系统条 件是在所述监视策略中定义的阈值水平。
全文摘要
一种用于选择性地监视所实现的软件应用中的个别事务的计算机实现方法、数据处理系统和计算机程序产品。响应于在入口点接收到新事务,检查监视策略以确定该监视策略是否表明了该事务应当被监视。如果该监视策略表明该事务应当被监视,则确定系统资源是否操作于在该监视策略中定义的预定系统条件之下。如果系统资源操作于预定系统条件之下,则该事务将被监视。如果系统资源没有操作于预定系统条件之下,则该事务将不被监视。
文档编号G06F9/46GK101118502SQ20071013913
公开日2008年2月6日 申请日期2007年7月26日 优先权日2006年8月3日
发明者H·M·麦金尼 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1