CN101207623B - 用于监控服务于业务事务的资源的系统和方法 - Google Patents

用于监控服务于业务事务的资源的系统和方法 Download PDF

Info

Publication number
CN101207623B
CN101207623B CN2007101927344A CN200710192734A CN101207623B CN 101207623 B CN101207623 B CN 101207623B CN 2007101927344 A CN2007101927344 A CN 2007101927344A CN 200710192734 A CN200710192734 A CN 200710192734A CN 101207623 B CN101207623 B CN 101207623B
Authority
CN
China
Prior art keywords
resource
resources
protocol
business transaction
header
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2007101927344A
Other languages
English (en)
Other versions
CN101207623A (zh
Inventor
C·L·亨特
R·M·梅利
D·纳斯塔奇奥
B·萨布拉马尼安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101207623A publication Critical patent/CN101207623A/zh
Application granted granted Critical
Publication of CN101207623B publication Critical patent/CN101207623B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/87Monitoring of transactions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Debugging And Monitoring (AREA)

Abstract

提供了一种用于监控服务于业务事务的资源的方法,系统和程序产品。该方法包括提供监控一个或更多资源所服务的业务事务的事务管理器,每个资源以及事务管理器都具有协议堆栈,其被配置用以发送和接收协议消息中的载入监控报头。该方法还包括在协议请求消息的协议请求报头中指定针对资源的性能度量的收集,由资源收集协议请求消息中所指定的性能度量,并将所收集的性能度量在协议响应消息的协议响应报头中发送给事务管理器。此外,该方法包括为资源子集上的协议堆栈预配置策略,使得预配置资源可以向代表其它资源的监控代理一样操作,并向资源管理器发送警示。

Description

用于监控服务于业务事务的资源的系统和方法
技术领域
本发明涉及用于在面向服务的架构(SOA)中监控服务于业务事务的资源的方法、系统和计算机程序产品。特别地,本发明涉及用于以附加监控信息修饰SOA交换的方法、系统和计算机程序产品,其中监控信息被携带在随同有效载荷的响应消息的报头部分中。此外,本发明涉及交叉检查资源所接收的响应消息中报头的方法,由此资源像代表其它端点(peer)资源的监控代理一样操作。
背景技术
在当今的业务环境中,客户正在越来越多地处理与组织和/或业务机构例如零售商、银行服务等的在线或电子事务。在典型的情境中,希望处理在线事务的客户通过互联网访问业务机构的Web页面,然后可能必须根据在线事务的类型来提供个人信息。例如,如果在线购买项目,则客户为了购买该项目通常必须提供标识客户的个人信息,例如姓名、地址、信用卡号等。不变的是,用于这种在线事务的数据可以被网络上的多个计算机处理,其中每个计算机执行该事务的一个方面。这些计算机中的任何一个如果过载等等,则可能导致在处理事务方面的延迟,这可能消极地影响客户。因此,需要为业务机构和/或组织提供一种具有成本效益的开发监控系统的途径,该监控系统可以追踪这类电子事务以确保客户保持满意。
发明内容
在本发明的第一方面中,提供了一种在面向服务的架构中监控服务于业务事务的资源的方法。该方法包括提供事务管理器,其被配置用以在面向服务的架构中监控由一个或更多资源所服务的业务事务。在一种实施方式中,一个或更多资源中的每一个资源以及业务管理器都在其上部署了协议编码-解码组件,其被配置用以发送请求收集性能度量的一个或更多协议请求消息,并被配置用以接收包含所收集的性能度量的一个或更多协议响应消息。该方法包括:在协议请求消息的协议请求报头中指定针对一个或更多服务于业务事务的资源中至少一个资源的一个或更多性能度量的收集,收集在协议请求消息中指定的一个或更多性能度量,并在协议响应消息的协议响应报头中将一个或更多服务于业务事务的资源中至少一个资源所收集的一个或更多性能度量发送给事务管理器。在一种实施方式中,事务管理器被配置用以监控与业务事务相关联的一个或更多事务度量,并被配置用以根据从一个或更多资源处收集到的一个或更多性能度量,分析为业务事务所监控的一个或更多事务度量。该方法还包括:提供资源管理器,其被配置用以从部署在一个或更多资源中的一个或更多资源上的一个或更多监控代理处收集一个或更多性能度量事件。该方法还包括:将协议请求消息的协议请求报头与业务事务的执行线程相关联,并将协议请求消息的协议请求报头传播给在业务事务的同一执行线程内进行的任何其它请求,其中协议请求消息的协议请求报头在与业务事务相关联的所有交换中被复制。该方法还包括:至少为对应于一个或更多资源中各资源的各协议编码-解码组件预配置策略,其中各资源检查针对从后继资源接收到的各协议响应报头中的一个或更多性能度量中性能度量的合计(aggregate)值,并且其中各资源在性能度量的预设值被超过时向资源管理器发送警示。在一种实施方式中,发送步骤还包括:由一个或更多资源中各前驱资源将各性能度量集合附加到从一个或更多资源中各后续资源接收到的协议响应消息的协议响应报头中,并将协议响应消息发送给事务管理器。此外,在一种实施方式中,发送步骤包括:在协议响应消息的协议响应报头中,对一个或更多性能度量中的每一个进行合计,其中该一个或更多性能度量对应于一个或更多资源中的资源,该一个或更多资源中的资源服务于业务事务的同一执行线程内进行的任何其它请求,并将协议响应消息发送给事务管理器。在一种实施方式中,协议包括简单对象访问协议(SOAP)。
在本发明的另一方面,提供了一种用于在面向服务的架构中监控服务于业务事务的资源的系统。该系统包括一个或更多被配置用以服务于业务事务的资源,其中一个或更多资源中的多个资源在其上部署了协议堆栈。该系统还包括在其上部署了协议堆栈的事务管理器,其被配置用以向一个或更多资源中的多个资源产生协议请求消息的协议请求报头,以监控针对由一个或更多资源中的多个资源所服务的业务事务的一个或更多性能度量,一个或更多资源中的多个资源中的每一个资源被配置用以收集针对业务事务的一个或更多性能度量,并在发送给事务管理器的协议响应消息的协议响应报头中对一个或更多性能度量进行合计,其中协议请求消息中的协议请求报头与业务事务的执行线程相关联,且其中协议请求消息中的协议请求报头被传播给业务事务的同一执行线程内进行的任何其它请求,使得协议请求消息中的协议请求报头在与业务事务相关联的所有交换中被复制。该系统还包括资源管理器,其被配置用以从部署在一个或更多资源上的一个或更多监控代理处收集一个或更多性能度量。在一种实施方式中,事务管理器还被配置用以监控针对由一个或更多资源所服务的业务事务的一个或更多事务度量,并被配置用以根据一个或更多资源所收集的一个或更多性能度量,分析为一个或更多服务于业务事务的资源所监控的一个或更多事务度量。在一种实施方式中,一个或更多资源中多个资源的各前驱资源被配置用以将各性能度量集合附加到从一个或更多资源的各后继资源处接收到的协议响应消息中的协议响应报头中。在一种实施方式中,对应于一个或更多资源中的多个资源中的一个或更多资源的协议堆栈预配置有策略,用以将在协议响应报头中接收到的一个或更多性能度量中的性能度量的合计值与性能度量的预设值进行比较,使得一个或更多资源中的多个资源中的一个或更多资源在性能度量的预设值被超过时向资源管理器发送警示。在一种实施方式中,协议堆栈是简单对象访问协议(SOAP)堆栈,协议请求报头是简单对象访问协议(SOAP)请求报头,协议响应报头是简单对象访问协议(SOAP)响应报头;协议请求消息是简单对象访问协议(SOAP)请求消息,并且协议响应消息是简单对象访问协议(SOAP)响应消息。
在本发明的另一方面中,提供了一种用于监控与业务事务相关联的度量的计算机程序产品。该计算机程序产品包括,计算机可读介质,第一程序指令,用以提供事务管理器,该事务管理器被配置用以在发送给一个或更多服务于业务事务的资源的请求消息的请求报头中指定一个或更多性能度量的收集,一个或更多资源中的每一个资源以及事务管理器都在其上部署了协议堆栈。该计算机程序产品还包括第二程序指令,用以收集在请求消息中被指定的一个或更多性能度量,以及第三程序指令,用以在响应消息的响应报头中将一个或更多服务于业务事务的资源所收集的一个或更多性能度量发送给事务管理器。在一种实施方式中,第二程序指令还包括用以将请求消息的请求报头与业务事务的执行线程相关联并将请求消息的请求报头传播给业务事务执行线程内的任何其它请求消息的指令。此外,在一种实施方式中,第二程序指令还包括用以将各性能度量集合附加在从一个或更多资源的后继资源处接收到的响应消息的响应报头中并将响应消息发送给事务管理器的指令。该计算机程序产品还包括第四指令,用以对部署在一个或更多资源上的协议堆栈预配置策略,从而将从后继资源接收到的各响应报头中的一个或更多性能度量中性能度量的合计值与性能度量的预设值进行比较,并在性能度量的预设值被超过时向资源管理器发送警示。在一种实施方式中,事务管理器还被配置用以监控与业务事务相关联的一个或更多事务度量,并且还被配置用以根据一个或更多资源处所收集的一个或更多性能度量,分析为业务事务所监控的一个或更多事务度量。在一种实施方式中,协议堆栈是简单对象访问协议(SOAP),请求报头是简单对象访问协议(SOAP)请求报头,响应报头是简单对象访问协议(SOAP)响应报头,请求消息是简单对象访问协议(SOAP)请求消息,且响应消息是简单对象访问协议(SOAP)响应消息。在一种实施方式中,第一,第二,第三和第四程序指令中的每一个都存储在计算机可读介质上。
附图说明
附图与说明书相结合并构成说明书的一部分,它与说明书一起说明了本发明的实施方式,解释了本发明的原理:
图1A描述了概括了根据本发明的一种实施方式的监控服务于业务事务的资源的一种实施方式中所包括步骤的流程图;
图2A描述了概括了根据本发明的一种实施方式的监控服务于业务事务的资源的另一种实施方式中所包括步骤的流程图,其中一个或更多资源附加地代表其它端点资源来充当监控代理;
图1B是说明了根据本发明的一种实施方式的对应于图1A中所概括方法的用于监控服务于业务事务的资源的方法和系统的实施方式的示意系统框图;
图2B是说明了根据本发明的一种实施方式的对应于图2A中所概括方法的用于监控服务于业务事务的资源的方法和系统的实施方式的示意系统框图;
图3是说明了根据本发明的一种实施方式的用于在面向服务的架构中监控服务于业务事务的资源的方法和系统的另一种实施方式的示意系统框图;以及
图4是说明了根据本发明的一种实施方式的用于在面向服务的架构中监控服务于业务事务的资源的计算机基础设施的一种实施方式的示意系统框图。
具体实施方式
本说明书中所提及的“一种实施方式”,“一个实施方式”或类似语言的意思是所描述的与实施方式有关的特定特征、结构或特性被包括在本发明的至少一种实施方式中。因此,本说明书中的短语“在一种实施方式中”,“在一个实施方式中”以及类似语言可以,但不是必须,都是指同一实施方式。
而且,所描述的本发明的特征、结构、特性可以在一种或更多实施方式中以任意适合的方式被组合。对于本领域技术人员显而易见的是,可以对本发明进行各种修改和变化而并不背离本发明的精神和范围。因此,本发明意在涵盖所附权利要求书及等同项的范围之内提供的对该发明的各种修改和变化。现在将详细参考本发明的优选实施方式。
现在参考图1A和图2A,其描述了概括了监控资源或性能度量或业务方法调用中信息的方法的不同实施方式的流程图。词语“业务方法调用”是指从一个应用到另一个应用的简单请求,例如“就70美元支付来验证信用卡号码XYZ”。如图1A所示,在一种实施方式100A中,监控资源度量的方法开始于,在步骤103中提供具有协议堆栈的事务管理器(还将在下文针对图1B和图2B讨论),其中协议堆栈被配置用以在协议请求消息的协议请求报头中请求收集针对业务事务的性能度量,并还被配置用以接收包含资源所收集的性能度量的协议响应消息的协议响应报头。此外,该方法还包括在步骤105中提供一个或更多具有协议堆栈的资源,其中协议堆栈被配置用以收集资源接收到的协议请求消息的协议请求报头中所指定的个体性能度量。在步骤107中,该方法包括在协议请求报头中请求由一个或更多服务于业务事务的资源来收集一个或更多性能度量,并在步骤111中将协议请求消息的协议请求报头与业务事务的执行线程相关联,使得协议请求报头被传播给在同一执行线程内的进行的任何其它请求。此外,该方法还包括在步骤113中将协议请求消息的协议请求报头发送给服务于业务事务的第一资源,在步骤115中,通过该第一资源将协议请求消息的协议请求报头转发给服务于业务事务的每个后继资源。该方法还包括在步骤117中将各性能度量集合附加到从各后继资源接收到的协议响应消息的协议响应报头中,并在步骤121中将包含性能度量的协议响应消息的协议响应报头发送回事务管理器。
此外,如图2A所示,在另一种实施方式200A中,监控服务于业务事务的资源的方法包括:在步骤203中提供具有协议堆栈的事务管理器,其中协议堆栈被配置用以在协议请求消息的协议请求报头中请求收集针对业务事务的性能度量,并被配置用以接收包含所收集的性能度量的协议响应消息的协议响应报头。此外,该方法还包括在步骤205中提供具有协议堆栈的一个或更多资源,其中协议堆栈被配置用以收集在所接收的协议请求消息的协议请求报头中指定的个体性能度量,其中一个或更多资源具有预配置有策略或规则的协议堆栈,并在步骤207中在协议请求报头中请求由一个或更多服务于业务事务的资源收集一个或更多性能度量。此外,该方法还包括在步骤209中,当用于性能度量的特定预设值被超过时,在协议请求报头中请求报告由拥有具备预配置策略的协议堆栈的一个或更多资源代表其它资源所收集的任何性能度量,并在步骤211中将协议请求消息的协议请求报头与业务事务的执行线程相关联,使得协议请求报头被传播给在同一执行线程内进行的任何其它请求。此外,该方法还包括在步骤213中将协议请求消息的协议请求报头发送给服务于业务事务的第一资源。在步骤215中,该方法包括由第一资源将协议请求消息的协议请求报头转发给服务于业务事务的每个后继资源。同样地,该方法包括在步骤217中将各性能度量集合附加给从各后继资源处接收的协议响应消息的协议响应报头中,并在步骤219中由拥有具备预配置策略的协议堆栈的资源检查针对从后继资源处接收的各协议响应报头中所收集的性能度量合计值,并在步骤221中将包含性能度量的协议响应消息的协议响应报头发送回事务管理器。此外,该方法包括在步骤223中,如果所检查的性能度量的合计值超过了性能度量的预设值,则向资源管理器发送警示。
此外,现在参考图1B和图2B,其描述了由业务事务中涉及的各种组件执行在上文图1A和图2A中所概括的方法或过程步骤的各种实施方式。特别地,上文图1A所概括的方法对应于图1B所示的实施方式,而上文图2A所概括的方法对应于图2B所示的实施方式。由于实施方式100B和200B的一些方面是相似的,所以相似的方面将根据图1B和图2B一起描述,而区别的特征将在下文被区别地描述。如图1B和图2B所示,监控服务于业务事务的资源的方法包括:提供事务管理器106(图2B中为206),其被配置用以在面向服务的架构(SOA)中监控由一个或更多资源110,114,118和122(图2中为210,214,218和222)服务的业务事务。使用面向服务的架构(SOA)实现的业务事务是指从提供一个web服务的资源向提供另一个web服务的另一个资源的调用。资源可以是服务于业务事务的任何设备、机器或系统,例如web服务器、信用卡验证系统、数据库服务器、电子邮件服务器等。此外,事务管理器106(图2B中为206)是监控或收集与最终用户正在体验的业务事务相关联的事务度量或事务数据的应用或系统。特别地,事务管理器106(图2B中为206)可以追踪事务度量,例如,从用户的角度看业务事务用了多长时间和/或处理业务事务的每个资源110,114,118和/或122(图2B中为210,214,218和/或222)花费了多长时间等。事务管理器106(图2B中为206)追踪这些事务度量或事务信息,并可以将每个资源花费的时间细目(breakdown)发送给远程位置的管理员,使得管理员可以在必要的时候执行适当操作。然而,如图1B和图2B的实施方式所公开的,事务管理器106(图2B中为206)被配置用以针对一个或更多服务于业务事务的资源而追踪性能、或资源、或资源层面的度量,使得事务管理器106(图2B中为206)能够根据所收集的针对个体资源的性能度量来解释被追踪的事务度量,如下文将讨论的。图1B和图2B示出了由4个资源服务(在图1B中表示为实线箭头112,116,120,124,126和128,在图2B中表示为实线箭头212,216,220,224,226和228)的业务事务,4个资源即资源1(图1B中的参考数字110以及图2B中的210)、资源2(图1B中的参考数字114以及图2B中的214)、资源3(图1B中的参考数字118以及图2B中的218)和资源4(图1B中的参考数字122以及图2B中的222)。例如,资源1(图1B中的参考数字110以及图2B中的210)可以是web服务器,且web服务器110(图2B中的210)向资源2(图1B中的参考数字114以及图2B中的214)调用(图1中的箭头112,图2中的箭头212)web服务,且资源2(图1B中的参考数字114以及图2B中的214)向资源3(图1B中的参考数字118以及图2B中的218)调用(图1中的箭头116,图2中的箭头216)另一个web服务,且资源3(图1B中的参考数字118以及图2B中的218)向资源4(图1B中的参考数字122以及图2B中的222)调用(图1中的箭头120,图2中的箭头220)又一个web服务。例如资源2(图1B中的参考数字114以及图2B中的214)可以是客户将项目放进购物车时所访问的“购物车结帐(checkout)”服务器,而资源3(图1B中的参考数字118以及图2B中的218)可以是检查项目是否为是现成的“现成产品验证”服务器,而资源4(图1B中的参考数字122以及图2B中的222)可以是验证客户针对业务事务而提供的信用卡信息的“信用卡验证”服务器。可选择地,例如,资源2(图1B中的参考数字114以及图2B中的214)可以调用送货部门(没有在图1B和图2B中示出)以检查项目或产品是否在库存中,且资源2继而调用(图1B中的箭头116以及图2B中的箭头216)资源3(图1B中的参考数字118以及图2B中的218),且资源3继而调用(图1B中的箭头120以及图2B中的箭头220)资源4(图1B中的参考数字122以及图2B中的222)。
尽管图1B和图2B中所示的业务事务流程是线性方式的,但如图3所示,当存在由资源同时执行的其它步骤或过程时,业务事务流程也可以不是线性的。如图3中的实施方式300所示,事务管理器306发送请求消息给资源1(参考数字310),资源1进而同时发送消息给资源2(参考数字314)、资源3(参考数字318)和资源4(参考数字322)。例如,资源1(参考数字310)可以是web服务器,其联系可以是用于检查库存的数据库服务器资源2(参考数字314),而资源3(参考数字318)可以是信用卡验证服务器且资源4(参考数字322)可以是发送关于业务事务消息的电子邮件服务器。相应地,资源4(参考数字322)、资源3(参考数字318)和资源2(参考数字314)中的每一个都将自己的响应发送回资源1(参考数字310),资源1(参考数字310)将响应发送回事务管理器306。这里使用的图3仅仅是为了示出非线性事务的实例,并且假设图1B和图2B中的教示也同样可适用于图3时,不会对图3进行详细讨论。
回到图1B和图2B,在一种实施方式中,4个资源110(图2中的210)、114(图2中的214)、118(图2中的218)和/或122(图2中的222)中的每一个资源以及事务管理器106(图2中的206)都在其上部署了仪器化(instrumented)协议编码-解码组件或仪器化协议堆栈。可选择地,事务管理器106(图2中的206)以及只是4个资源110,114,118和122(图2中的210,214,218和222)的子集可以具有仪器化协议。在一种实施方式中,用于使用面向服务的架构(SOA)实现的业务事务的传输协议是SOAP(简单对象访问协议)。SOAP规范在http://www.w3.org/TR/soap/处有详细描述。“协议堆栈”或“SOAP堆栈”或“编码-解码组件”是指用于编码和解码协议消息特别是SOAP消息的软件层。SOAP消息是使用标记语言(XML-扩展标记语言)的文本消息,其中消息具有不同的部分:主体(body)或有效载荷以及报头。SOAP消息可以包括一个主体,但可以包括一个或更多报头。消息中的报头包括将用于调用者和响应者之间包括它们自己的传输节点的信息,例如“将响应返回给这个地址”或“这个消息是更大的业务编号987的一部分”。同样地,SOAP消息中的每个报头可以服务于完全不同的目的,例如定义安全许可、事务标记、传输参数等。主体或有效载荷包括想要从调用者到响应者的消息,例如“就70美元支付来验证信用卡号XYZ”,或从响应者到调用者的响应,例如“信用核准”。特别地,“仪器化协议堆栈”是指具有附加功能性的协议堆栈,其允许协议堆栈(知道如何编码和解码SOAP消息的软件层)除了理解消息有效载荷中携带的请求之外,还能理解请求资源层面的数据或信息或性能度量的报头(也称为“负载监控”报头),如上文针对图1A和图2A所描述的。同样地,在消息交换中实现主体/报头分离这一相同概念的任何其它交换协议可被用于将本发明的方法付诸实践。
参考图1B和图2B,事务管理器106(图2中的206)具有仪器化SOAP堆栈,将SOAP请求消息108(图2B中的208)发送给资源1,参考数字110(图2B中的210)。特别地,SOAP请求消息108(图2B中的208)包含SOAP报头,其请求由服务于业务事务的四个资源110,114,118和122(图2B中的210,214,218,222)中的一个或更多资源收集一个或更多性能或资源度量,此外,还包括可以在其它报头中携带的任何其它请求以及在SOAP请求消息108(图2中的208)的主体或有效载荷中携带的实际请求。可以针对资源而收集的性能度量的一些实例包括,中央处理单元(CPU)使用、存储器分页、磁盘使用、磁盘空闲空间、磁盘分段、存储器利用、线程计数、进程数目、所读字节(网络I/O)、所写字节(网络I/O)等。特别地,如图1B和图2B所示,在协议请求消息(SOAP请求消息)的协议请求报头(SOAP请求报头)中被指定和携带的用于收集一个或更多性能度量的请求信息被转发(实线箭头108,112,116和120以及图2B中的实线箭头208,212,216和220)给资源110,114,118和122(图2B中的210,214,218,222)中的每一个资源,而由一个或更多服务于业务事务的资源所收集的性能度量在协议响应消息(SOAP响应消息)的协议响应报头(SOAP响应报头)中被发送回事务管理器106(图2B中的206)。而且,资源110,114,118和122(图2B中的210,214,218,222)中的每一个资源将协议(SOAP)请求消息的协议(SOAP)请求报头与业务事务的执行线程相关联,由此将协议(SOAP)请求消息的协议(SOAP)请求报头传播给业务事务的同一执行线程内进行的其它任何请求。
如上所述,四个资源110,114,118和122(图2B中的210,214,218,222)中的每一个资源以及事务管理器106(图2B中的206)优选地具有仪器化SOAP堆栈,使得当SOAP请求消息从事务管理器106(图2B中的206)被发送给资源1(图1B中的参考数字110以及图2B中的210)时,资源1上的仪器化SOAP堆栈能够追踪SOAP请求消息108(图2B中的208)的请求报头中的指令。相应地,资源1收集事务管理器106(图2B中的206)在SOPA请求消息108(图2B中的208)的SOAP报头中所请求的性能度量。类似地,当请求消息108(图2B中的208)被转发时,资源1(参考数字110)传播包含在SOAP请求消息108(图2B中的208)中的请求报头,并将其发送(图1B中的箭头112以及图2B中的箭头212)给资源2(图1B中的参考数字114以及图2B中的214),使得资源2上的仪器化SOAP堆栈收集其自己的、由事务管理器106(图2B中的206)针对资源2在SOPA请求消息108(图2B中的208)的SOAP报头中所请求的性能度量。再一次地,当消息108(图2B中的208)从资源2(图1B中的参考数字114以及图2B中的214)被转发到资源3(图1B中的参考数字118以及图2B中的218)时,资源2传播包含在SOAP请求消息108(图2B中的208)中的请求报头,并将其发送(图1B中的箭头116以及图2B中的箭头216)给资源3,使得资源3上的仪器化SOAP堆栈收集其自己的、由事务管理器106(图2B中的206)针对资源3在SOPA请求消息108(图2B中的208)的SOAP报头中所请求的性能度量。而且,当请求消息108(图2B中的208)从资源3(图1B中的参考数字118以及图2B中的218)被转发到资源4(图1B中的参考数字122以及图2B中的222)时,资源3传播包含在SOAP请求消息108(图2B中的208)中的请求报头,并将其发送(图1B中的箭头120以及图2B中的箭头220)给资源4,使得资源4上的仪器化SOAP堆栈收集其自己的、由事务管理器106(图2B中的206)针对资源4在SOAP请求消息108(图2B中的208)的SOAP报头中所请求的性能度量。结果,协议(SOAP)请求消息的协议(SOAP)请求报头在与业务事务相关联的所有交换或消息中被复制。
在一种实施方式中,资源110,114,118和122(图2B中的210,214,218,222)中的每一个资源上的仪器化SOAP堆栈收集性能度量或资源度量信息,并将所收集的信息添加或附加到关于业务事务请求的响应消息的SOAP响应报头中。特别地,资源4(图1B中的参考数字122以及图2B中的222)所收集的性能度量被添加到从资源4(图1B中的参看数字122以及图2B中的222)发送回(图1B中的箭头124以及图2B中的箭头224)资源3(图1B中的参看数字118以及图2B中的218)的SOAP响应消息的SOAP响应报头中。进而,资源3(图1B中的参看数字118以及图2B中的218)将资源3所收集的性能度量添加到从资源4接收到的SOAP响应消息的SOAP响应报头中,并将其发送回(图1B中的箭头126以及图2B中的箭头226)资源2(图1B中的参看数字114以及图2B中的214),资源2进而将其所收集的性能度量添加到从资源3接收到的SOAP响应消息的SOAP响应报头中,并将其发送回(箭头128)资源1(图1B中的参看数字110以及图2B中的210)。再一次地,资源1将其所收集的性能度量添加到从资源2接收到的SOAP响应消息的SOAP响应报头中,并将SOAP响应消息发送回(图1B中的箭头130以及图2B中的箭头230)事务管理器。此外,仪器化SOAP堆栈在将SOAP消息发送给事务管理器之前,在发送给事务管理器106(图2B中的206)的SOAP响应消息的SOAP响应报头中,对针对服务于业务事务的同一执行线程内进行的任何其它请求的资源所收集的一个或更多性能度量进行合计。而且,由于每个资源上的仪器化SOAP负责收集针对资源的度量,所以,优选地,每个资源具有能够收集性能度量的仪器化SOAP堆栈,但这不是必须的。因此,如果资源110,114,118和122(图2B中的210,214,218和222)中的每一个资源都在其上安装了仪器化SOAP堆栈,则前驱资源上的仪器化SOAP堆栈可以将其自己的性能度量添加到从其调用的后继资源处接收到的响应报头中。相应地,发送(图1B中的实线箭头130以及图2B中的实线箭头230)给事务管理器106(图2B中的206)的SOAP响应消息的最终响应报头包含一个响应报头,该响应报头具有针对有助于全面回答的资源110,114,118和122(图2B中的210,214,218和222)中每一个资源的性能度量。然而,如果资源具有非仪器化的SOAP堆栈(非仪器化SOAP堆栈),则非仪器化SOAP堆栈简单地将性能或资源负载监控报头传递给后继资源,而并不收集其自己的性能度量。因此,针对资源上非仪器化SOAP堆栈的性能度量将不会被包括在传送给事务管理器的响应消息的最终响应报头中。
在一种实施方式中,该方法还包括提供资源管理器102(图2B中的202)以管理资源,其中资源管理器102被配置用以收集来自部署在资源110,114,118和/或122(图2B中的210,214,218和/或222)上的一个或更多监控代理的一个或更多性能度量事件。资源管理器102(图2B中的202)是被配置用以从运行在资源上的监控代理处接收事件的应用。此外,监控代理是运行在一个或更多资源上的程序,其任务是监控这些资源上的性能或资源度量,例如CPU数据、磁盘使用等。如果监控代理观察到某事是有问题的,例如,资源上的CPU已经达到70%阈值,监控代理产生事件(也被称为性能度量事件),并将其发送给资源管理器102(图2B中的202)。例如,如图1B和图2B所示,资源1(图1B中的参考数字110,图2中的210)具有收集资源1上性能度量的监控代理134(图2B中的234)。监控代理134所收集的性能度量可能不同于事务管理器106(图2B中的206)所请求的性能度量。监控代理134(图2B中的234)将针对资源1所收集的性能度量发送(图1B中的虚线箭头138以及图2B中的虚线箭头238)给资源管理器102(图2B中的202)。资源管理器102(图2B中的202)被配置用以在针对资源1的性能度量超过了预定值时,接收(图1B中的虚线箭头138;图2B中的虚线箭头238)来自运行在资源1(图1B中的参看数字110以及图2B中的210)上的监控代理134(图2B中的234)的警示,使得资源管理器102(图2B中的202)可以采取所需的任何适当操作。类似地,资源2(图1B中的参考数字114以及图2B中的214)具有收集针对资源2的性能度量的监控代理136(图2B中的236)。再一次地,监控代理136(图2B中的236)将所收集的性能度量和/或当针对资源2的性能度量超过预设值或阈值时的警示发送(图1B中的虚线箭头140以及图2B中的虚线箭头240)给资源管理器102(图2B中的202)。这样,资源管理器102(图2B中的202)收集针对分别具有运行于其上的监控代理134和136(图2B中的234和236)的个体资源110和114(图2B中的资源210和214)的所有资源或性能度量事件。然而,由于资源3(图1B中的参考数字118以及图2B中的218)和资源4(图1B中的参考数字122以及图2B中的222)没有任何监控代理在其上,所以只有分别运行在资源1(图1B中的参考数字110以及图2B中的210)和资源2(图1B中的参考数字114以及图2B中的214)上的监控代理134和136(图2B中的234和236)所收集的信息被传递或通信给资源管理器102(图2B中的202)。这意味着,如果例如资源4(图1B中的参考数字122以及图2B中的222)由于性能度量例如CPU使用已被超过而缓慢(图1B中由符号132示出以及图2B中的232),则这一性能信息将不会被通信给资源管理器102(图2B中的202),因此,没有针对资源4解决该问题。此外,资源管理器102(图2B中的202)没有主动地将信息通信给事务管理器106(图2B中的206),但如果事务管理器106(图2B中的206)请求,则来自资源管理器102(图2B中的202)的信息可以被通信(图1B中的双端箭头104以及图2B中的双端箭头204)给事务管理器106(图2B中的206)。
在另一种实施方式中,如图2A和图2B所概括的,本发明提供了监控一个或更多资源所服务的业务事务的方法200A和200B,其包括至少为对应于一个或更多资源中各资源的各仪器化协议编码-解码组件(仪器化SOAP堆栈)预配置策略或规则,使得各资源检查针对从后继资源接收到的各协议(SOAP)响应报头中的性能度量的合计值。此外,各资源在针对后继资源性能度量的预设值被超过时,向资源管理器发送警示。相应地,预配置有策略或规则的仪器化SOAP堆栈还像监控代理一样操作,并能够在确定了用于端点资源上性能度量的预设值或预配置阈值已被超过时,代表端点资源向资源管理器发送警示。警示可被实现为直接发送给资源管理器的简单消息,其指出了哪个度量超过了阈值或预设置,其中可能包含所测量的值以及预配置阈值或预设值。例如,如图2B所示,资源2(参考数字214)具有仪器化SOAP堆栈,其也预配置有策略(图2B中的符号242)以代表图2B中资源3(参考数字218)和/或资源4(参考数字222)的来充当监控代理。特别地,不同于较早描述的图1B中的情形,如果为图2B中的资源3或资源4、或者资源3和资源4二者预设了特定的标准或值,则资源2(参考数字214)上的预配置仪器化SOAP堆栈能够将所收集的性能度量与从资源4(参考数字222)和/或资源3(参考数字218)处所接收的性能度量进行比较,并可以确定针对图2B中的资源3和/或资源4是否达到了特定的预设阈值,从而资源2(参考数字214)可以代表资源3(参考数字218)和/或资源4(参考数字222)向资源管理器202发出警示(虚线244),由此警示图2B中的资源管理器202达到了预设阈值和/或标准。相应地,在一种实施方式中,仅有一些SOAP堆栈预配置有策略以像监控代理一样操作从而代表其它资源报告事件,因而最小化了监控整个网络资源所需的监控代理数目,并最小化了允许所有和每个个体资源除将其状态通信给处理正常业务事务的有关端点之外还通信给中央监控基础设施的任何连接问题。此外,在一种实施方式中,资源监控基础设施或资源管理器202提供了图形用户界面,其中用于一个或更多性能度量的标准或值可以被预设。相应地,当事务管理器206请求监控信息时,其可以请求特定的性能度量,并可以在某个预设阈值被超过时请求性能度量。此外,即使资源2(图2B中的参考数字214)上的仪器化SOAP堆栈预配置有策略(符号242)用以比较并向资源管理器202发送警示,监控代理,例如监控代理236,依然可以被安装在资源上(例如资源2,图2中的参考数字214)。例如,监控代理236可以监控可能与由资源2(参考数字214)上的预配置仪器化SOAP堆栈242所收集到的不同的性能或资源度量集合。
在另一种实施方式中,如图1B和图2B所示,本发明如上所述地提供了用于在面向服务的架构中监控服务于业务事务的资源的系统100B和200B的不同实施方式。系统包括一个或更多被配置用以服务于业务事务的资源(图1中的110,114,118,122以及图2中的210,214,218,222),其中一个或更多资源在其上部署了仪器化协议堆栈,优选地,每个资源均在其上部署了仪器化协议堆栈。系统还包括事务管理器(图1B中的106以及图2B中的206),其上部署了仪器化协议堆栈,并被配置用以在发送给图1B和图2B中四个资源的协议请求消息中产生协议请求报头,用以监控针对这四个资源所服务的业务事务的一个或更多性能度量。此外,在一种实施方式中,四个资源(图1B和图2B所示)中的每一个资源都被配置用以收集针对业务事务的一个或更多性能度量,并用以对发送给事务管理器的协议响应消息的协议响应报头中的一个或更多性能度量进行合计,其中协议请求消息的协议请求报头与业务事务的执行线程相关联,使得协议请求消息的协议请求报头被传播给业务事务的同一执行线程内进行的任何其它请求。相应地,如上文方法中所述,协议请求消息的协议请求报头在与业务事务相关联的所有交换中被复制。该系统还包括资源管理器(图1B中的102以及图2B中的202),其被配置用以从部署在一个或更多资源上的特别地,图1B和图2B中所示的资源1和资源2上的一个或更多监控代理(图1B中的134和136以及图2B中的234和236)处收集一个或更多性能度量事件。在一种实施方式中,事务管理器(图1B中的106以及图2B中的206)还被配置用以监控针对由一个或更多资源(图1B中110,114,118和122以及图2B中210,214,218和222)所服务的业务事务的一个或更多事务度量,并被配置用以根据由一个或更多资源所收集的一个或更多性能度量,分析针对一个或更多服务于业务事务的资源所监控的一个或更多事务度量,如上文方法中所述。在一种实施方式中,一个或更多资源中多个资源的各前驱资源,例如资源3(图1B中的118以及图2B中的218),被配置用以将各性能度量集合附加到从一个或更多资源的各后继资源例如资源4(图1B中的122以及图2B中的222)接收到的协议响应消息的协议响应报头中。在一种实施方式中,如图2B所示,对应于一个或更多资源的子集(例如只有资源2(图2B中的214))的仪器化协议堆栈预配置有策略(符号242),用以将所接收的协议响应消息的协议响应报头中性能度量的合计值与性能度量的预设值进行比较,使得预配置资源(例如,资源2,参考数字214)或资源在性能度量的预设值被超过时向资源管理器202发送警示。在一种实施方式中,仪器化协议堆栈包括仪器化简单对象访问协议(SOAP)堆栈,其中协议请求报头包括简单对象访问协议(SOAP)请求报头,其中协议响应报头包括简单对象访问协议(SOAP)响应报头,其中协议请求消息包括简单对象访问协议(SOAP)请求消息,并且其中协议响应消息包括简单对象访问协议(SOAP)响应消息。
在另一种实施方式中,本发明提供用于监控与业务事务相关联的度量的计算机程序产品。优选地,该计算机程序产品是从计算机可用或计算机可读介质上可访问的形式,其提供由计算机或任何指令执行系统使用或与其结合的程序代码或指令。为了描述的目的,计算机可用或计算机可读介质可以是包含、储存、通信、传播或传输代码或指令的任何装置,其中代码或指令由指令执行系统、装置或设备使用或与其结合。优选地,介质可以包括电、磁、光学、电磁、红外或半导体系统(或装置或设备)或传播介质。更优选地,计算机可读介质可以包括半导体或固体状态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性(rigid)磁盘和光盘。此外,光盘的实例包括压缩盘-只读存储器(CD-ROM)、压缩盘-读/写存储器(CD-R/W)和数字多功能/视频光盘(DVD)。本发明的形式可以是全部的硬件实施方式,全部的软件实施方式或同时包括硬件和软件元件的实施方式。在优选实施方式中,本发明被实现为软件,其包括但不限于固件、驻留软件、微指令等。
该计算机程序产品包括第一程序指令用以提供事务管理器,该事务管理器被配置用以在发送给一个或更多服务于业务事务的资源的请求消息的请求报头中,指定一个或更多性能度量的收集,一个或更多资源中的每一个资源以及事务管理器在其上部署了仪器化协议堆栈。该计算机程序产品还包括第二程序指令,用以收集在请求消息中指定的一个或更多性能度量,以及第三程序指令,用以将一个或更多服务于业务事务的资源所收集的一个或更多性能度量在响应消息的响应报头中发送给事务管理器。在一种实施方式中,第二程序指令还包括用以将请求消息的请求报头与业务事务的执行线程相关联并将请求消息的请求报头传播给业务事务的同一执行线程内进行的任何其它请求的指令。此外,在一种实施方式中,第二程序指令还包括用以将各性能度量集合附加到从一个或更多资源的后继资源处接收到的消息响应消息的消息响应报头中并将响应消息发送给事务管理器的指令。该计算机程序产品还包括第四程序指令,用以为部署在一个或更多资源上的仪器化协议堆栈预配置策略,借以将从后继资源接收到的各响应报头中的一个或更多性能度量中性能度量的合计值与性能度量的预设值进行比较,并在性能度量的预设值被超过时向资源管理器发送警示。在一种实施方式中,事务管理器还被配置用以监控与业务事务相关联的一个或更多事务度量,并且还被配置用以根据一个或更多资源所收集的一个或更多性能度量,分析针对业务事务所监控的一个或更多事务度量。在一种实施方式中,仪器化协议堆栈包括仪器化简单对象访问协议(SOAP)堆栈,并且协议请求报头包括简单对象访问协议(SOAP)请求报头。此外,协议响应报头包括简单对象访问协议(SOAP)响应报头,协议请求消息包括简单对象访问协议(SOAP)请求消息,并且协议响应消息包括简单对象访问协议(SOAP)响应消息。在一种实施方式中,第一,第二,第三和第四程序指令被保存在计算机可读介质上。
现在参考图4,说明了根据本发明的用于为实现容量管理服务而确定优化配置和相关操作代价的系统400。如所描述的,系统400包括计算机基础设施402,其意在代表在安全环境(即,对其的访问控制是加强的)中被维护的任何类型的计算机体系结构。如图所示,基础设施402包括计算机系统404,其典型地代表服务器等。然而,应当理解,尽管没有示出,其它硬件和软件组件(例如,附加的计算机系统,例如,应用服务器、监管服务器、路由器、防火墙等)可以被包括在基础设施402中。
一般而言,用户(用户1,参考数字432,到用户N,参考数字434,中的任意一个)可以接口连接基础设施402以执行业务事务。类似地,任何管理员436和/或服务提供者444可以为访问系统404而接口连接基础设施402,以监控资源,例如服务于业务事务的资源1,参考数字440到资源N,参考数字442。此外,资源1(参考数字440)到资源N(参考数字442)可以为服务于业务事务而接口连接基础设施402。如图所示,资源1(参考数字440)具有部署于其上的仪器化协议堆栈441,而资源N(参考数字442)具有部署于其上的仪器化协议堆栈443。此外,事务管理器414也具有部署于其上的仪器化协议堆栈416。为此,每个资源优选地具有仪器化协议堆栈,用于与事务管理器414通信。此外,资源管理器430也可以接口连接计算机系统404,用于将可能被请求的任何关于资源管理器通过监控代理和/或像代理一样操作的资源所收集的任何资源度量的信息提供给事务管理器414。一般而言,各方可以直接地或通过加载到计算机化设备(例如,个人计算机、便携式计算机、手持设备等)上的接口(例如,客户端web浏览器)在网络上访问基础设施402。在后者的情形中,网络可以是例如互联网的任何类型网络,或者可以是任何其它网络,例如局域网(LAN)、广域网、(WAN)、虚拟个人网、(VPN)等。在任何事件中,与基础设施402的通信可以通过直接硬连线连接(例如,串行端口)进行,或通过使用有线线路和/或无线传输方法的任意组合的可寻址连接进行。而且,传统的网络连接,例如令环、以太、无线保真或其它传统通信标准可以被使用。而且,连接可以由传统的基于TCP/IP套接字的协议提供。在本例中,各方可以使用互联网服务提供者来建立与基础设施402的连接。应当理解,在本发明下,基础设施402可以被例如提供者444的一方或独立实体所拥有和/或操作。总之,基础设施402的使用和在此描述的教示可以在订制或免费的基础上提供给各方。在任一情境中,管理者436可以支持和配置基础设施402。
计算机系统或服务器404被示出包括CPU(下文中的“处理单元406”)、存储器412、总线410以及输入/输出(I/O)接口408。此外,计算机系统400被示出与外部I/O设备424和存储系统422通信。在所示的一种实施方式中,存储系统422包括可被用以预配置各资源1到资源N(参考数字440和442)中任一资源上的仪器化协议堆栈的策略或规则426,使得被预配置的资源可以附加地像监控代理一样操作。一般而言,处理单元406执行计算机程序代码,例如事务管理器应用414,其包括仪器化协议堆栈416,在一种实施方式中包括SOAP堆栈。当执行事务管理器应用414时,处理单元406可以向/从存储器412、存储系统422和/或I/O接口408写和/或读数据。总线410提供计算机系统400中每个组件之间的通信链路。外部设备424可以包括允许用户与计算机系统400交互的任何设备(例如,键盘、指点设备、显示器等)和/或允许计算机系统400与一个或更多其它计算设备通信的任何设备(例如,网卡、调制解调器等)。
计算机基础设施402对于用于实现本发明的各种类型计算机基础设施中只是说明性的。例如,在一种实施方式中,计算机基础设施404包括两个或更多在网络上通信以执行本发明各种过程步骤的计算设备(例如,服务器集群)。而且,计算机系统400对于可以包括众多硬件组合的各种可能的计算机系统只是说明性的。在此程度上,在其它实施方式中,计算机系统400可以包括包含用于执行特定功能的硬件和/或计算机程序代码的任何特定的通用计算制品,任何包括专用和通用硬件/软件组合的计算制品,等等。在每个情形中,程序代码和硬件可以分别使用标准编程和工程技术来创建。而且,处理单元406可以包括单一处理单元,或跨例如客户端和服务器上的一个或更多位置中的一个或更多处理单元而被分布。类似地,存储器412和/或存储系统422可以包括驻留在一个或更多物理位置的各种类型的数据存储和/或传输介质的任意组合。此外,I/O接口408可以包括用于与一个或更多外部设备424交换信息的任何系统。此外,应当理解,一个或更多附加组件(例如,系统软件、数学协处理单元等没有在图4中示出)可以被包括在计算机系统400中。类似地,应当理解,一个或更多外部设备424(例如,显示器)和/或存储系统422可以被包括在计算机系统404中,而没有在外部示出。
存储系统422可以是能够存储信息或数据例如策略426的任意类型的系统(例如,数据库),策略426提供例如预配置协议堆栈在预设的资源度量被超过时应当做什么的规则。在此程度上,存储系统422可以包括一个或更多存储设备,例如磁盘驱动或光盘驱动。在另一种实施方式中,存储系统422包括跨越例如局域网(LAN)、广域网络(WAN)或存储区域网络(SAN)(没有示出)分布的数据。尽管没有示出,但附加的组件,例如高速缓存存储器、通信系统、系统软件等,可以结合在系统400中。
相应地,在一种实施方式中,从最终用户的角度(例如,用户1、参考数字432,到用户N,参考数字434,的任意用户),事务管理器414根据从资源1(参考数字440)到资源N(参考数字442)所收集到的性能度量,分析针对业务事务所监控到的事务度量,并设法理解随同其可能已经收集到的针对资源1到资源N的任何事务度量的性能信息。例如,如果资源上的CPU已经达到最大程度,但资源仍然可以满足完成事务请求的预期目标时间,则针对该资源的性能度量可以被认为是可接受的。此外,事务管理器414可以例如在服务于特定事务的资源没有满足预期目标时间时从资源管理器430获取信息。特别地,事务管理器414能够基于什么性能度量或数据被资源管理器430传送(即,通过由监控代理或通过预配置有策略以像监控代理一样操作的资源所获取的数据)而指出原因。例如,事务管理器414可能指出事务没有满足预期目标事件的原因是由于硬盘失败或过量磁盘使用等。此外,资源管理器430和事务管理器414所收集到的数据可以被传递给管理员436和/或提供者444,由此为管理员436和/或提供444提供对资源更为全面的理解。
对本发明特定实施方式的上述描述是为了说明和描述的目的而被介绍。它们并非意在穷尽或将本发明限制于所公开的精确形式,并且显然地,很多修改和变化根据本发明的教导是可行的。实施方式的选择和描述是为了最好的解释本发明的原理及其实践应用,从而使本领域技术人员能够最好地利用本发明和具有各种修改的各种实施方式,只要其适合特定的预期应用。本发明的范围意在由所附权利要求书及其等同项定义。

Claims (14)

1.一种在面向服务的架构中监控服务于业务事务的资源的方法,所述方法包括步骤:
提供事务管理器,其被配置用以在面向服务的架构中监控由一个或更多资源所服务的业务事务,所述一个或更多资源中的每一个资源以及所述业务管理器都在其上部署了协议编码-解码组件,所述组件被配置用以发送请求收集性能度量的一个或更多协议请求消息,并被配置用以接收包含所收集的所述性能度量的一个或更多协议响应消息;
在所述一个或更多协议请求消息的协议请求消息的协议请求报头中,指定针对所述服务于所述业务事务的一个或更多资源中至少一个资源的一个或更多性能度量的收集;
收集在所述协议请求消息中指定的所述一个或更多性能度量;以及
在协议响应消息的协议响应报头中将所述一个或更多服务于所述业务事务的资源中的所述至少一个资源所收集的所述一个或更多性能度量发送给所述事务管理器。
2.根据权利要求1所述的方法,其中所述提供步骤还包括步骤:
提供所述事务管理器,其被配置用以监控与所述业务事务相关联的一个或更多事务度量;以及
提供所述事务管理器,其被配置用以根据从所述一个或更多资源处收集的所述一个或更多性能度量,分析为所述业务事务所监控的所述一个或更多事务度量。
3.根据权利要求2所述的方法,其中所述提供步骤还包括步骤:
提供资源管理器,其被配置用以从部署在所述一个或更多资源中的一个或更多资源上的一个或更多监控代理处收集一个或更多性能度量事件。
4.根据权利要求3所述的方法,其中所述指定步骤还包括步骤:
将所述协议请求消息中的所述协议请求报头与所述业务事务的执行线程相关联;以及
将所述协议请求消息中的所述协议请求报头传播给所述业务事务的所述同一执行线程内进行的任何其它请求;其中所述协议请求消息中的所述协议请求报头在与所述业务事务相关联的所有交换中被复制。
5.根据权利要求4所述的方法,其中所述指定步骤还包括步骤:
至少为对应于所述一个或更多资源中各资源的各协议编码-解码组件预配置策略,其中所述各资源检查针对从后继资源接收到的各协议响应报头中的所述一个或更多性能度量中性能度量的合计值,并且其中所述各资源在所述性能度量的预设值被超过时向所述资源管理器发送警示。
6.根据权利要求4所述的方法,其中所述发送步骤还包括步骤:
由所述一个或更多资源中各前驱资源将各性能度量集合附加到从所述一个或更多资源中各后续资源接收到的协议响应消息的协议响应报头中;以及
将所述协议响应消息发送给所述事务管理器。
7.根据权利要求5所述的方法,其中所述发送步骤还包括步骤:
在所述协议响应消息的所述协议响应报头中,对服务于所述业务事务的所述同一执行线程内进行的任何其它请求的所述一个或更多资源中的资源相对应的所述一个或更多性能度量中的每一个进行合计;以及
将所述协议响应消息发送至所述事务管理器。
8.根据权利要求7所述的方法,其中所述协议包括简单对象访问协议(SOAP)。
9.一种用于在面向服务的架构中监控服务于业务事务的资源的系统,包括:
一个或更多资源,其被配置用以服务于业务事务,所述一个或更多资源在其上部署了协议堆栈;以及
在其上部署了所述协议堆栈的事务管理器,其被配置用以向所述一个或更多资源产生协议请求消息的协议请求报头,以监控针对由所述一个或更多资源所服务的所述业务事务的一个或更多性能度量,所述一个或更多资源中的每一个资源被配置用以收集针对所述业务事务的所述一个或更多性能度量,并在发送给所述事务管理器的协议响应消息的协议响应报头中对所述一个或更多性能度量进行合计,其中所述协议请求消息中的所述协议请求报头与所述业务事务的执行线程相关联,且其中所述协议请求消息中的所述协议请求报头被传播给所述业务事务的所述同一执行线程内进行的任何其它请求,使得所述协议请求消息中的所述协议请求报头在与所述业务事务相关联的所有交换中被复制。
10.根据权利要求9所述的系统,还包括:
资源管理器,其被配置用以从部署在所述一个或更多资源上的一个或更多监控代理处收集一个或更多性能度量。
11.根据权利要求10所述的系统,其中所述事务管理器还被配置用以监控针对由所述一个或更多资源所服务的所述业务事务的一个或更多事务度量,并被配置用以根据所述一个或更多资源所收集的所述一个或更多性能度量,分析由所述事务管理器为所述一个或更多服务于所述业务事务的资源所监控的所述一个或更多事务度量。
12.根据权利要求11所述的系统,其中所述一个或更多资源的各前驱资源被配置用以将各性能度量集合附加到从所述一个或更多资源的各后继资源处接收到的所述协议响应消息中的所述协议响应报头中。
13.根据权利要求12所述的系统,其中对应于所述一个或更多资源中的一个或更多资源的所述协议堆栈预配置有策略,用以将在所述协议响应报头中接收到的所述一个或更多性能度量中的性能度量的合计值与所述性能度量的预设值进行比较,并且其中所述一个或更多资源中的所述一个或更多资源在所述性能度量的所述预设值被超过时向所述资源管理器发送警示。
14.根据权利要求13所述的系统,其中所述协议堆栈包括简单对象访问协议(SOAP)堆栈;其中所述协议请求报头包括简单对象访问协议(SOAP)请求报头;其中所述协议响应报头包括简单对象访问协议(SOAP)响应报头;其中所述协议请求消息包括简单对象访问协议(SOAP)请求消息;并且其中协议响应消息包括简单对象访问协议(SOAP)响应消息。
CN2007101927344A 2006-12-21 2007-11-16 用于监控服务于业务事务的资源的系统和方法 Expired - Fee Related CN101207623B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/614,220 2006-12-21
US11/614,220 US8010654B2 (en) 2006-12-21 2006-12-21 Method, system and program product for monitoring resources servicing a business transaction

Publications (2)

Publication Number Publication Date
CN101207623A CN101207623A (zh) 2008-06-25
CN101207623B true CN101207623B (zh) 2012-03-14

Family

ID=39201430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101927344A Expired - Fee Related CN101207623B (zh) 2006-12-21 2007-11-16 用于监控服务于业务事务的资源的系统和方法

Country Status (5)

Country Link
US (1) US8010654B2 (zh)
EP (1) EP2115591A1 (zh)
KR (1) KR101173338B1 (zh)
CN (1) CN101207623B (zh)
WO (1) WO2008074668A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2791794C (en) * 2002-10-30 2017-01-10 Portauthority Technologies, Inc. A method and system for managing confidential information
US8291097B2 (en) * 2007-01-10 2012-10-16 Microsoft Corporation Dynamic transaction protocol upgrades
EP2248233B1 (en) 2008-02-07 2018-04-04 Imra America, Inc. High power parallel fiber arrays
JP4577384B2 (ja) * 2008-03-14 2010-11-10 日本電気株式会社 管理マシン、管理システム、管理プログラム、および、管理方法
US8938533B1 (en) 2009-09-10 2015-01-20 AppDynamics Inc. Automatic capture of diagnostic data based on transaction behavior learning
US10122550B2 (en) 2010-02-15 2018-11-06 International Business Machines Corporation Inband data gathering with dynamic intermediary route selections
US8924537B2 (en) * 2010-09-09 2014-12-30 Hewlett-Packard Development Company, L.P. Business processes tracking
US8589537B2 (en) * 2010-09-22 2013-11-19 Blue Stripe Software, Inc. Methods and computer program products for aggregating network application performance metrics by process pool
CN102014163B (zh) * 2010-12-08 2013-06-05 云海创想信息技术(北京)有限公司 一种基于事务驱动的云存储测试方法及系统
CN102103518B (zh) 2011-02-23 2013-11-13 运软网络科技(上海)有限公司 一种在虚拟化环境中管理资源的系统及其实现方法
US9507683B2 (en) 2011-05-20 2016-11-29 International Business Machines Corporation Monitoring service in a distributed platform
US8972569B1 (en) * 2011-08-23 2015-03-03 John J. D'Esposito Remote and real-time network and HTTP monitoring with real-time predictive end user satisfaction indicator
US9311598B1 (en) * 2012-02-02 2016-04-12 AppDynamics, Inc. Automatic capture of detailed analysis information for web application outliers with very low overhead
US9280437B2 (en) * 2012-11-20 2016-03-08 Bank Of America Corporation Dynamically scalable real-time system monitoring
US20140172372A1 (en) * 2012-12-17 2014-06-19 Microsoft Corporation Operation speed as a dynamic level line
US20150193327A1 (en) * 2014-01-09 2015-07-09 Cinch Systems, Inc. Connection checking for hardwired monitoring system
US9858549B2 (en) * 2014-02-03 2018-01-02 Cisco Technology, Inc. Business transaction resource usage tracking
WO2021167659A1 (en) * 2019-11-14 2021-08-26 Trideum Corporation Systems and methods of monitoring and controlling remote assets
CN112764990B (zh) * 2021-01-12 2021-11-16 北京自如信息科技有限公司 一种目标进程的监控方法、装置及计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050549A1 (en) * 2003-08-26 2005-03-03 International Busniess Machines Corporation Method and system for dynamically associating type information and creating and processing meta-data in a service oriented architecture
CN1805365A (zh) * 2005-01-12 2006-07-19 北京航空航天大学 Web服务分级服务质量处理器及处理方法
CN1867898A (zh) * 2003-10-14 2006-11-22 国际商业机器公司 用于在面向服务的体系结构中处理服务请求的方法和装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7363361B2 (en) * 2000-08-18 2008-04-22 Akamai Technologies, Inc. Secure content delivery system
FI20002854A (fi) * 2000-12-22 2002-06-23 Nokia Corp Etälataamisen tilaindikaattorit langattomissa lyhyen kantaman laitteissa
US7720958B2 (en) * 2001-03-09 2010-05-18 International Business Machines Corporation Method and system for embedding correlated performance measurements for distributed application performance decomposition
US7464154B2 (en) * 2001-05-18 2008-12-09 Network Resonance, Inc. System, method and computer program product for analyzing data from network-based structured message stream
US7143139B2 (en) * 2002-03-27 2006-11-28 International Business Machines Corporation Broadcast tiers in decentralized networks
US7177929B2 (en) * 2002-03-27 2007-02-13 International Business Machines Corporation Persisting node reputations in transient network communities
US7069318B2 (en) * 2002-03-27 2006-06-27 International Business Machines Corporation Content tracking in transient network communities
US7039701B2 (en) * 2002-03-27 2006-05-02 International Business Machines Corporation Providing management functions in decentralized networks
US7251689B2 (en) * 2002-03-27 2007-07-31 International Business Machines Corporation Managing storage resources in decentralized networks
US20040024861A1 (en) * 2002-06-28 2004-02-05 Coughlin Chesley B. Network load balancing
US8005854B2 (en) 2003-03-14 2011-08-23 Sybase, Inc. System with methodology for executing relational operations over relational data and data retrieved from SOAP operations
US7567504B2 (en) 2003-06-30 2009-07-28 Microsoft Corporation Network load balancing with traffic routing
US20060069717A1 (en) * 2003-08-27 2006-03-30 Ascential Software Corporation Security service for a services oriented architecture in a data integration platform
US20050065879A1 (en) * 2003-09-18 2005-03-24 Convergys Information Management Group, Inc. System and method for web service billing
US7483384B2 (en) * 2003-09-22 2009-01-27 Hewlett-Packard Development Company, L.P. System and method for monitoring network traffic
US7716290B2 (en) * 2003-11-20 2010-05-11 Microsoft Corporation Send by reference in a customizable, tag-based protocol
US20060095584A1 (en) 2004-11-12 2006-05-04 Sonoa Systems, Inc. Semantic-based switch fabric OS
US8195789B2 (en) * 2005-04-20 2012-06-05 Oracle International Corporation System, apparatus and method for characterizing messages to discover dependencies of services in service-oriented architectures
KR100738339B1 (ko) * 2005-12-01 2007-07-12 한국전자통신연구원 인터넷 프로토콜 오프로드의 패킷 전송 장치 및 방법
US20080114690A1 (en) * 2006-10-26 2008-05-15 International Business Machines Corporation System and method for performing partner settlement for managed services in an ip multimedia subsystem (ims) network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050549A1 (en) * 2003-08-26 2005-03-03 International Busniess Machines Corporation Method and system for dynamically associating type information and creating and processing meta-data in a service oriented architecture
CN1867898A (zh) * 2003-10-14 2006-11-22 国际商业机器公司 用于在面向服务的体系结构中处理服务请求的方法和装置
CN1805365A (zh) * 2005-01-12 2006-07-19 北京航空航天大学 Web服务分级服务质量处理器及处理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Jan Schaefer.An Approach for Fine-Grained Web Service Performance Monitoring.《DISTRIBUTED APPLICATIONS AND INTEROPERABLE SYSTEMS LECTURE NOTES IN COMPUTER SCIENCE》.2006,第4025卷169-180. *
Michael P. Papazoglou等.Web Services Mangement: A Survey.《IEEE INTERNET COMPUTING》.IEEE,2005,第9卷(第6期),58-64. *

Also Published As

Publication number Publication date
KR20090088375A (ko) 2009-08-19
CN101207623A (zh) 2008-06-25
KR101173338B1 (ko) 2012-08-10
US20080155089A1 (en) 2008-06-26
EP2115591A1 (en) 2009-11-11
WO2008074668A1 (en) 2008-06-26
US8010654B2 (en) 2011-08-30

Similar Documents

Publication Publication Date Title
CN101207623B (zh) 用于监控服务于业务事务的资源的系统和方法
US7886295B2 (en) Connection manager, method, system and program product for centrally managing computer applications
CN101193009B (zh) 用于对Web事件进行音调监控的方法、系统和程序产品
CN100553203C (zh) 用于在网络中管理非应用特定错误的系统和方法
CN101535978B (zh) 分布式服务器系统中的消息转发备份管理器
CN102792264B (zh) 路由针对双工应用的请求
US7584282B2 (en) Object-based service oriented architecture method, apparatus and media
JP2010532503A (ja) 統合管理システム環境における障害及び性能情報統合モニタリング方法並びにそのシステム
JP2006509296A (ja) 供給チェーンの集約及びウェブ・サービスのためのシステム及び方法
CN104025070A (zh) 用于管理工业过程的系统和方法
CN1954310A (zh) 用于网络报警类选的方法和装置
US10185614B2 (en) Generic alarm correlation by means of normalized alarm codes
CN1545788B (zh) 用于服务等级协议检查的具有代理业务能力服务器的安全网关及其方法
CN101202751A (zh) 为虚拟联网设备提供简单网络管理协议数据的系统和方法
CN104717277A (zh) 用于基于云的紧急无线链路的方法和系统
CN110324209A (zh) 微服务系统监控方法、装置、电子设备及计算机可读介质
US8671180B2 (en) Method and system for generic application liveliness monitoring for business resiliency
US10659320B2 (en) Device management system
CN107046581A (zh) 一种服务运行状态的监测方法、装置及服务器
US20200068192A1 (en) Video management system for video devices in a building system
CN114285786B (zh) 一种网络链路库的构建方法及装置
CN110278133B (zh) 由服务器执行的检查方法、装置、计算设备以及介质
JP6076813B2 (ja) 端末の稼動状況監視方法
Shah Internet of Things (IoT) Rollouts in the Telehealth Industry
US20210273782A1 (en) System and method for generating an omni-channel support platform

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120314

Termination date: 20181116