首页> 中国专利> 用于公布和监测分布式数据处理系统中提供服务的实体的方法及装置

用于公布和监测分布式数据处理系统中提供服务的实体的方法及装置

摘要

本发明公开一种用于提供实体的确定和监测的方法、装置、以及计算机指令。分布式数据处理系统(100)包括一个或多个分布式公布实体(400,402,404),它们以标准语言公布计算机可读公告(800)。这些公告(800)可以包含可用来监测一个或多个分布式被监测实体(400,402,404)的行为的监测方法(802)的描述。这些公告也可以包括用来确定可由分布式被监测实体(400)用来监测其自身行为或由分布式使用者实体用来监测分布式被监测实体(400)行为的监测方法(802)的信息。该监测也可以由第三方分布式监测实体(400)来执行。

著录项

  • 公开/公告号CN1682211A

    专利类型发明专利

  • 公开/公告日2005-10-12

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN03822262.0

  • 申请日2003-09-12

  • 分类号G06F15/173;

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人康建峰

  • 地址 美国纽约

  • 入库时间 2023-12-17 16:33:52

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-09-29

    专利权有效期届满 IPC(主分类):G06F15/173 专利号:ZL038222620 申请日:20030912 授权公告日:20091028

    专利权的终止

  • 2009-10-28

    授权

    授权

  • 2005-12-07

    实质审查的生效

    实质审查的生效

  • 2005-10-12

    公开

    公开

说明书

相关申请的交叉引用

本发明涉及下面的授权申请:“用于软件的自动更新和测试的方法及装置”,序列号10/252,868,代理机构号YOR920020174US1;“自主计算的组成服务”,序列号10/252,324,代理机构号YOR920020176US1;“自管理计算系统”,序列号10/252,247,代理机构号YOR920020181US1;以及“计算机系统中的自适应问题确定和恢复”,序列号10/252,979,代理机构号YOR920020194US1;全部在此同一日期提交,转让给相同受让人,并在此引用作为参考。

技术领域

本发明一般地涉及一种改进的分布式数据处理系统,更特别地涉及一种用于监测分布式数据处理系统中的实体的方法及装置。更特别地,本发明提供一种用于确定并监测网络数据处理系统中提供服务的实体的方法及装置。

背景技术

现代计算技术已导致非常复杂和不断变化的环境。一种这样的环境是Internet,也称作“互联网”。Internet是通过网关连接在一起的可能不同的一组计算机网络,网关处理数据传送和从发送网络的协议到接收网络所使用的协议的信息转换。当以大写字母开头时,术语“Internet”指的是使用TCP/IP协议组的网络和网关的集合。当前,在Internet上传送数据的最通常使用的方法是利用World Wide Web环境,也简单地称作“Web”。存在用于传送信息的其他Internet资源,例如文件传送协议(FTP)和Gopher,但还没有达到Web的普及性。

在Web环境中,服务器和客户端使用超文本传送协议(HTTP)来实现数据事务,超文本传送协议是一种用于处理各种数据文件(例如,文本,还有图形图像、音频、动态视频等)的传送的知名协议。各种数据文件中的信息用标准页面描述语言来格式化以呈现给用户。Internet也广泛用来传送应用程序给使用浏览器的用户。时常地,软件包的用户可以通过Internet来搜索和获得那些软件包的更新。

其他类型的复杂网络数据处理系统包括那些为了使大公司中的工作便利而创建的系统。在很多情况下,这些网络可能跨越世界范围内各个地方的区域。这些复杂网络也可以使用Internet作为用于管理交易的虚拟专用网络的一部分。这些网络因需要管理和更新网络内所使用的软件而更复杂。时常地,发生不同网络数据处理系统之间的交互作用,以使不同的事务便利。这些事务可以包括,例如供应品、零件和服务的采购和交付。事务可以在单个交易中或在不同交易之间发生。

这种环境由许多松散连接的软件成分构成。这些软件成分也称作“实体”。在现代复杂的网络数据处理系统中,存在数不清的情形,其中出现了测试或监测另外实体,例如特定运行进程或特定服务的操作的需要。当前,操作员必须测试和监测实体,例如重要系统服务的正确运行,以检测并纠正这些实体中的差错和故障。在许多情况下,一种服务对于其正确运行可能依赖于其他服务。在这种情况下,确定那些其他服务是否正确地运行,以便当那些服务没有正确地运行时采取措施或提出警告是重要的。例如,用于订购供应品的采购实体可能不经常需要特定供应者的选定部件。虽然该部件不经常被需要,但是当出现需要时能够迅速地获得部件是必不可少的。如果供应者改变其库存并且不再提供该部件,或者如果在供应者处用来产生订单的订单实体不可用,采购实体能够定位另外的服务是极重要的。当前,需要操作员确定测试订单实体的进程,以确定订单实体是否正确地运行。在该例子中,如果订单实体提供库存中可供应的选定部件,那么订单实体正确地运行。在确定该进程之后,操作员必须监测订单实体。

当前,计算实体的测试和监测主要在ad hoc基础上执行。需要监测特定服务的操作员将编写该服务的监测程序或手工地搜索其他人已编写的这种程序以执行监测。监测程序将手工地部署和配置,并且操作员将手工地检查其输出。在某些情况下,操作员可以将监测程序包裹在命令解释程序中,命令解释程序将自动地采取某些行动,例如当检测出问题时重新启动服务。

现有的维护和管理工具,例如IBM Tivoli Enterprise Console包括一些特征,例如管理控制台,其显示许多不同实体的监测状态和测试结果,包括检测到的差错和产生的警告,并使管理员可以指定当出现某些警告时将自动采取的动作。IBM Tivoli Enterprise Console可从国际商业机器公司获得。一些标准,例如简单网络管理协议(SNMP),指定在实体之间传送警报和其他系统事件的编制完善的方法。在硬件中和在软件中的一些现代计算系统在思想上设计有可测试性,并且在一些情况下,初始制造商或一个或多个第三方提供用于测试特定产品的特定测试工具或算法。

即使有这些类型的维护和管理工具,操作员也需要确定实体和将用来监测那些实体的方法。这种系统是耗费时间的并经常可能需要大量的探索以确定服务如何被监测。因此,具有用于确定和监测提供服务的实体的改进的方法、装置以及计算机指令将是有利的。

发明内容

本发明提供一种用于提供实体的确定和监测的方法、装置及计算机指令。分布式数据处理系统包括以标准语言公布计算机可读公告的一个或多个分布式公布实体。这些公告可以包含可用来监测一个或多个分布式被监测实体的行为的监测方法的描述。这些公告也可以包含用来确定监测方法的信息,监测方法可以由分布式被监测实体用来监测其自身行为,或者由分布式使用者实体用来监测分布式被监测实体的行为。监测也可以由第三方分布式监测实体执行。

附图说明

被认为是本发明特有的新特征在附加权利要求书中阐述。但是,本发明本身,以及优选的使用方式,其更多目的和优点,当连同附图一起阅读时将通过参考下面说明性实施方案的详细描述最好地理解,其中:

图1描绘其中本发明可被实施的数据处理系统的网络的图示表示。

图2是根据本发明优选实施方案的可实施为服务器的数据处理系统的方框图。

图3是说明其中本发明可被实施的数据处理系统的方框图。

图4是说明根据本发明优选实施方案的用于监测实体的信息流的图表。

图5是说明其中第三方分布式监测实体根据本发明优选实施方案而被提供的用来监测实体的信息流的图表。

图6是根据本发明优选实施方案的用于确定和监测实体的过程的流程图。

图7是根据本发明优选实施方案的由第三方分布式监测实体用来监测实体的过程的流程图;以及

图8是说明根据本发明优选实施方案的用于公布实体的监测方法的数据结构的图表。

具体实施方式

现在参考附图,图1描绘其中本发明可被实施的数据处理系统的网络的图示表示。网络数据处理系统100是其中本发明可被实施的计算机网络。网络数据处理系统100包含网络102,它是用来提供网络数据处理系统100内连接在一起的各种设备和计算机之间的通信链路的媒介。网络102可以包括连接,例如有线、无线通信链路或光缆。

在所描述的例子中,服务器104与存储单元106一起连接到网络102。另外,客户端108、110和112连接到网络102。这些客户端108、110和112可以是,例如个人计算机或网络计算机。在所描述的例子中,服务器104为客户端108-112提供数据,例如引导文件、操作系统映像,以及应用程序。客户端108、110和112是服务器104的客户端。网络数据处理系统100可以包括另外的服务器、客户端,以及没有显示的其他设备。服务器104和客户端108-112可以包含不同的分布式实体,它们可以通过网络102而相互通信。“分布式实体”是网络数据处理系统中能够执行功能的任何实体,包括但不局限于,自主元素、代理商、经纪人、聚合者、监测者、使用者、供应者、转售者,以及中间人。

在所描述的例子中,网络数据处理系统100是Internet,其中网络102表示使用传输控制协议/Internet协议(TCP/IP)协议组以相互通信的网络和网关的世界范围的集合。在Internet的中心部是由成千上万的发送数据和信息的商业、政府、教育及其他计算机系统组成的主节点或主计算机之间的高速数据通信线路骨干。当然,网络数据处理系统100也可以实施为许多不同类型的网络,例如内部网、局域网(LAN),或广域网(WAN)。图1打算作为例子,而不是作为本发明的结构上的限制。本发明的机制可以在包含相互通信的不同数据处理系统的任何网络数据处理系统中实施。

参考图2,可实施为服务器,例如图1中的服务器104的数据处理系统的方框图根据本发明的优选实施方案而描绘。数据处理系统200可以是包含连接到系统总线206的多个处理器202和204的单个或对称多处理机(SMP)系统。可选地,单个处理机系统可以使用。同样连接到系统总线206的是存储控制器/高速缓冲存储器208,其提供到局部存储器209的接口。I/O总线桥201连接到系统总线206并提供到I/O总线212的接口。存储控制器/高速缓冲存储器208和I/O总线桥210可以如所示地集成。

连接到I/O总线212的外围设备互连(PCI)总线桥214提供到PCI局部总线216的接口。许多调制解调器可以连接到PCI局部总线216。典型的PCI总线实施将支持四个PCI扩充插槽或内插式连接器。到图1中的客户端108-112的通信链路可以通过经由内插式板连接到PCI局部总线216的调制解调器218和网络适配器220来提供。

额外的PCI总线桥222和224提供可以支持额外的调制解调器或网络适配器的额外的PCI局部总线226和228的接口。这样,数据处理系统200允许到多个网络计算机的连接。存储映像图形适配器230和硬盘232也可以如所示直接地或间接地连接到I/O总线212。

本领域技术人员将认识到,图2中所描绘的硬件可以改变。例如,其他外围设备,例如光盘驱动器等,也可以外加或替代所描绘的硬件而使用。所描绘的例子并不打算隐含关于本发明的结构上的限制。图2中所描绘的数据处理系统可以是,例如IBM eServer pSeries系统,它是纽约Armonk的国际商业机器公司的产品,运行高级交互执行程序(AIX)操作系统或LINUX操作系统。

现在参考图3,说明其中本发明可被实施的数据处理系统的方框图被描绘。数据处理系统300是客户端计算机,例如图1的客户端108的例子。

数据处理系统300使用外围设备互连(PCI)局部总线结构。虽然所描绘的例子使用PCI总线,但其他总线结构,例如加速图形端口(AGP)和工业标准结构(ISA)也可以使用。处理器302和主存储器304通过PCI桥308连接到PCI局部总线306。PCI桥308也可以包括处理器302的集成的存储控制器和高速缓冲存储器。到PCI局部总线306的额外连接可以通过直接部件互连或通过内插式板来进行。在所描绘的例子中,局域网(LAN)适配器310,SCSI主机总线适配器312,以及扩充总线接口314通过直接部件互连而连接到PCI局部总线306。相反地,音频适配器316、图形适配器318,以及音频/视频适配器319通过插入到扩充插槽中的内插式板而连接到PCI局部总线306。扩充总线接口314提供键盘和鼠标适配器320、调制解调器322,以及附加存储器324的连接。小型计算机系统接口(SCSI)主机总线适配器312提供硬盘驱动器326、磁带驱动器328,以及CD-ROM驱动器330的连接。典型的PCI局部总线实施将支持三或四个PCI扩充插槽或内插式连接器。

操作系统在处理器302上运行并用来协调和提供图3中的数据处理系统300内各种部件的控制。操作系统可以是市场上可买到的操作系统,例如可从微软公司获得的Windows XP。操作系统以及应用软件或程序的指令位于存储设备,例如硬盘驱动器326上,并且可以加载入主存储器304中以由处理器302执行。

本领域技术人员将认识到,图3中的硬件可以依赖于实施而改变。其他内部硬件或外围设备,例如闪速只读存储器(ROM)、等同的非易失性存储器,或光盘驱动器等,可以外加或替代图3中所描绘的硬件而使用。同样地,本发明的过程可以应用于多处理器数据处理系统。

图3中的所描绘的例子和上述例子并不打算隐含结构限制。例如,数据处理系统300也可以是包括采取PDA形式的笔记本计算机或手提计算机。数据处理系统300也可以是报亭或Web设备。

本发明提供用于确定和监测由网络数据处理系统中实体提供的服务的改进方法、装置,以及计算机指令。特别地,本发明的机制利用标准例如Web服务描述语言(WSDL)和系统例如统一描述、发现,以及集成(UDDI),它们使程序可以定位提供特定服务的实体,并可以自动确定如何与那些服务通信和经营事务。WSDL是由公司,例如国际商业机器公司、Ariba公司,以及微软公司的代表编写的,由World WideWeb联盟考虑的推荐标准。UDDI版本3是用于Web用途和服务的当前规范。UDDI的将来发展和改变将由结构信息标准化促进组织(OASIS)来处理。本发明的机制使用这些标准来公布通常不提供的额外信息。该信息包括可用来监测实体的方法或过程的标识。监测可以包括,例如测试实体以确定服务是否运行。监测可以由使用提供服务的实体的客户端来执行,或由实体本身执行以测试其自身的功能性和可用性。该信息也可以由第三方监测实体用来为客户端检测实体。

现在转到图4,说明根据本发明优选实施方案的用于监测实体的信息流的图表被描绘。图4中的信息流在分布式被监测实体400、分布式公布实体402,以及分布式使用者实体404之间流动。分布式被监测实体是这样的分布式实体,存在至少一种方法或算法能够用来具有相当可能性地证实至少实体的一些部分正确地工作或能够执行至少一个功能。分布式公布实体是这样的分布式实体,其以能够被至少一个分布式实体访问这样一种方式公布或换句话说使某些信息可用。分布式使用者实体是这样的分布式实体,其依赖于至少一个其他分布式实体,以便正确地或最优地执行其功能。在这些例子中,实体是在数据处理系统,例如图2中的数据处理系统200或图3中的数据处理系统300上执行的软件成分或过程。取决于特定的实施,这些实体可以全部位于不同的数据处理系统上,或者实体的一些或全部可以位于相同的数据处理系统上。

在该例子中,分布式被监测实体400发送登记信息406给担当目录服务的分布式公布实体402。关于被登记实体的信息可以存储在目录408中。目录408使分布式公布实体402可以提供关于分布式被监测实体400以及向分布式公布实体402登记的其他实体的信息。特别地,目录408提供一种机制,以允许搜索匹配选定准则的被登记实体。在这些例子中,选定原则是选定服务。其他准则可以包括,例如分布式被监测实体位于其上的计算机的地理位置,或用来与分布式被监测实体通信的特定协议。登记信息406包括关于由分布式被监测实体400提供的服务的信息以及关于分布式被监测实体400如何可以被自动监测正确运行的信息。该登记信息可以包括用来监测分布式被监测实体400的监测方法的描述。例如,分布式被监测实体400可以包括被特别设计以允许实体的监测的监测接口。例如,监测方法可以描述启动监测分布式被监测实体400的测试的特定命令和参数。接口可以简单地接受请求并提供指示其能够响应请求的应答。接口可以更复杂,并基于发送到其监测接口的某些请求连续地或基于某种周期产生数据流。分布式被监测实体400可以被证实为正确地运行,如果数据流被接受到或如果特定数据在数据流中返回。应答可以是从客户端——分布式使用者实体404所请求的特定服务或服务组产生的数据。可选地,所发送的请求可以是无效请求,其中预期的错误信息将被接收。在另一种类型的监测方法中,关于分布式被监测实体400的特定统一资源终端可以被提供,简单对象访问协议(SOAP)请求可以发送给它。响应于该请求,特定应答可以指定为如果分布式被监测实体400正确地运行时所预期的应答。另一种监测方法可以包括发送特定的数据模式给分布式被监测实体400中的特定端口。

该数据模式的应答应当具有如果分布式被监测实体400正确地运行时的某种选定的对应模式。在另一种监测方法中,特定请求或一类请求可以发送给分布式被监测实体400,并且如果分布式被监测实体400正确地运行时在选定的时段内接收到回应。该指定的时段可以在所发送的请求中指定。在其他情况下,监测方法可以是将用来测试分布式被监测实体400的特定程序或程序段。该类型的程序可以采取各种形式,例如实用摘录报告语言(PERL)脚本、远程方法调用(RMI)客户端、RMIstub类,以及二进制可执行代码。当然,其他类型的监测方法可以依赖于特定的实施来实现。

此外,关于分布式被监测实体400如何可以被自动监测正确运行的信息可以通过不同于分布式被监测实体400的实体发送到分布式公布实体402以进入目录408。例如,该登记信息可以通过测试专家代理乃至输入数据的操作员来发送。在某些情况下,关于分布式被监测实体400如何可以被监测的信息保存于分布式被监测实体400处,而不进入目录408。在该情况下,客户端,例如分布式使用者实体404,将直接从分布式被监测实体400获得监测分布式被监测实体400的方法。目录408包括实体、由实体提供的服务,以及用于监测实体的监测方法的标识。该目录也可以包括其他信息,例如当前正监测的、先前已监测的,或预期将来被监测的分布式被监测实体。

随后,当分布式使用者实体404需要定位提供特定服务的实体时,该实体发送查询信息410给分布式公布实体402。可选地,该查询可以是由许多分布式公布实体接收的广播信息,并且这些实体的一个或多个提供应答。分布式公布实体402定位目录408中适当的服务,并在应答信息412中返回关于提供该特定服务的实体的信息给分布式使用者实体404。该应答可以包含关于提供该特定服务的许多不同实体的信息。如果多于一个实体包含于应答消息412中,分布式使用者实体404可以选择这些实体中与之操作或通信的一个或多个。在该例子中,分布式使用者实体404选择分布式被监测实体400。应答信息412中的信息包含关于如何联系分布式被监测实体400以及该实体如何可以被监测正确操作的信息。该信息可以包括可以应用于分布式被监测实体400的监测方法的至少一种描述。监测方法可以是在分布式被监测实体400上启动的过程。监测方法中的过程可以位于分布式被监测实体400中或处于其他位置,例如处于分布式使用者实体404。取决于特定的实施,监测信息可以从应答信息412中去除,而该监测信息由分布式使用者实体404直接从分布式被监测实体400获得。

所确定的实体和所提供的监测方法可以是基于不同实体之间的特定服务级协定或其他协定。例如,用来监测分布式被监测实体400的监测方法可以基于在分布式被监测实体400和分布式公布实体402之间建立的某种服务级协定或其他协定由分布式公布实体402提供给分布式使用者实体404。

在接收到应答信息412之后,分布式使用者实体404联系分布式被监测实体400,以启动使用方法和协议的功能操作414。这些是本领域中知名的方法和协议,例如WSDL和UDDI。该联系被启动,以使分布式使用者实体404可以使用由分布式被监测实体400提供的服务。分布式使用者实体404也执行关于分布式被监测实体400的监测操作416,以证实分布式被监测实体400继续正确地工作。在这些例子中这些监测操作在应答信息412中描述。监测操作可以通过不同事件,例如周期性事件或非周期性事件来启动。周期性事件可以是触发监测操作的定时器的到点。非周期性事件可以是,例如选定操作比如分布式使用者实体404的采购订单的启动。在这些例子中,监测操作416是一种方法,例如可以在分布式被监测实体400上执行的一个或多个测试。如果一个或多个测试在监测过程中失败,分布式使用者实体404可以采取纠正行动。这些纠正行动可以包括,例如执行进一步诊断测试以确定失败的原因、通知操作员测试失败、通知其他分布式实体存在问题、联系分布式公布实体402以确定分布式被监测实体400的替代者、尝试重新启动分布式被监测实体400,或者执行在应答信息412中确定的测试方法中所指定的一系列选定操作。

在本发明的另一种实施方案中,分布式使用者实体404执行在应答信息412中描述的测试操作,以在分布式使用者实体404开始关于分布式被监测实体400的功能操作414之前证实分布式被监测实体400的正确操作。在本发明的另一种实施方案中,分布式使用者实体404仅在服务级协定或其他协定位于分布式被监测实体400和分布式使用者实体404之间以后执行在应答信息412中描述的测试操作,并且测试操作响应于该协定。在一种可能的实施方案中,测试操作用来证实由分布式被监测实体400提供的服务处于在相关协定中指定的响应时间范围内。

在本发明的优选实施方案中,分布式被监测实体400实现至少一个监测接口,其被特别设计以允许由分布式使用者实体404启动以监测分布式被监测实体400的监测操作416。在本发明的其他实施方案中,由分布式使用者实体404启动以监测分布式被监测实体400的监测操作416包括发送无效请求给分布式被监测实体400和证实预期的错误指示被接收到。在又一种实施方案中,监测操作416可以包括请求分布式被监测实体400产生流向分布式公布实体402的连续或周期性的信息流,以及证实信息流继续如预期地到达。

在本发明的另一种实施方案中,分布式被监测实体400查询分布式公布实体402中的目录408,以获得关于分布式被监测实体400如何可以被监测正确操作的信息。为了自诊断的目的,该信息由分布式被监测实体400用来监测其自身操作。在本发明的又一种实施方案中,分布式使用者实体404从分布式被监测实体400本身,而不是从分布式公布实体402,接收关于分布式被监测实体400如何可以被监测正确操作的信息。

现在参考图5,说明根据本发明的优选实施方案其中第三方分布式监测实体被提供的用来监测实体的信息流的图表被描绘。在本例子中,实体的监测涉及作为分布式被监测实体的分布式被监测实体500、第三方分布式监测实体502、分布式公布实体504,以及分布式使用者实体506。在某些情况下,为了正确或最优的运行,分布式使用者实体506可能依靠由另一个实体,例如分布式被监测实体500提供的服务。在某些实例中,分布式使用者实体506可能不能执行监测功能。为了效率的原因,第三方监测也可以使用。结果,另一个实体,例如第三方分布式监测实体502可以用来提供监测功能。

分布式监测实体是这样的分布式实体,其利用至少一种技术或算法以具有某种可能性地证实至少分布式被监测实体的一些部分正确地工作或能够执行至少一个功能。第三方分布式监测实体是这样的分布式监测实体,其可能监测对于它自身功能的正确或最优性能该实体本身不依赖于的至少一个分布式被监测实体。另外,第三方分布式监测实体502也可以接受不同于分布式使用者实体506的其他实体的请求,以监测分布式被监测实体500或其他实体。换句话说,第三方分布式监测实体502可以提供多个客户端和多个分布式被监测实体的监测。另外,可以对由第三方分布式监测实体502提供的监测服务的收取费用。另外,监测的类型、监测方法或监测中所使用的参数可以基于从其他实体,例如分布式公布实体504接收的输入来改变或修改。修改可以包括,例如改变将被通知关于分布式被监测实体500的监测结果的实体。在本例子中,第三方分布式监测实体502发送登记信息508给担当目录服务的分布式公布实体504。关于分布式被监测实体500的信息以及关于第三方分布式监测实体502的信息可以保存于分布式公布实体504中的目录510中。在本例子中,登记信息508包含关于可以在分布式被监测实体500上执行的监测方法的信息。在本例子中,第三方分布式监测实体502发送登记信息512以向分布式公布实体504登记它自己,作为能够在实体例如分布式被监测实体500上执行监测操作的实体。登记信息512确定可以由第三方分布式监测实体502执行的监测的类型。该信息也可以确定可对它执行监测的实体。

取决于特定的实施,第三方分布式监测实体502也可以在登记信息512中包括信息,以向分布式公布实体504登记关于分布式被监测实体500的监测信息。另外,目录510也可以包含关于当前提供监测服务的第三方分布式监测实体、先前已提供监测服务的第三方分布式监测实体,以及预期将提供监测服务的第三方分布式监测实体的信息。

在本发明的某些实施方案中,分布式公布实体504或另外的分布式公布实体可以提供信息,包括关于哪些第三方分布式监测实体已在过去监测分布式被监测实体500和其他分布式被监测实体,和/或关于哪些第三方监测实体可能在将来这样地监测的信息,因为分布式使用者实体像分布式使用者实体506可能希望使用该信息来确定使用几个可能第三方分布式监测实体中的哪个(基于例如这样的理论:在过去已用于该目的的第三方分布式监测实体可能被期望现在也能够执行监测,或者已被指示其可能在将来执行监测的实体现在可以更多地准备执行监测)。随后,当分布式使用者实体506希望定位提供特定服务的实体时,该实体发送查询信息514给分布式公布实体504。响应于接收到查询信息514,分布式公布实体504确定可以提供在查询信息514中指定的服务的实体。关于这些实体的信息在应答信息516中返回给分布式使用者实体506。该应答包含关于实体,例如分布式被监测实体500的信息。此外,在本例子中,在应答信息516中返回给分布式使用者实体506的信息也包括关于自动监测分布式被监测实体500正确操作的信息。响应于接收到应答信息,分布式使用者实体506可以选择将与之操作和通信的一个或多个实体。在本例子中,实体是分布式被监测实体500。

另外,分布式使用者实体506发送查询信息518给分布式公布实体504,其中查询信息518请求关于能够执行在应答信息516中描述的监测操作的第三方分布式监测实体的信息。响应于接收到查询信息518,分布式公布实体504确定能够在分布式被监测实体500上执行监测操作的一个或多个第三方分布式监测实体。如上所述,这些监测操作可以取各种形式,例如可以在实体上执行以确定实体是否正确地运行的测试或方法。该信息在应答信息520中返回给分布式使用者实体506。基于该信息,分布式使用者实体506选择供监测分布式被监测实体使用的一个或多个第三方分布式监测实体。

其后,分布式使用者实体506联系分布式被监测实体500,并启动功能操作522以利用由分布式被监测实体500提供的服务。分布式使用者实体506也使用请求524来联系第三方分布式监测实体502,以请求分布式被监测实体500的监测。所请求的监测对应于从分布式公布实体504接收的应答信息516中所描述的操作。例如,操作可以指定将应用于分布式被监测实体500的监测方法。可选地,如果监测方法不在请求524中指定,该请求中的信息可以包括关于监测方法如何可以被确定的信息。在本例子中,第三方分布式监测实体502可以通过检查所公布的信息,例如在分布式公布实体504中的目录510中提供的信息来确定供监测分布式被监测实体500之用的监测方法。该请求也可以包括第三方分布式监测实体502需要用来代表分布式使用者实体506在分布式被监测实体500上执行监测操作的任何证书、验证信息,或委托文据。结果,第三方分布式监测实体502在分布式被监测实体500上执行监测操作526。取决于结果,第三方分布式监测实体502采取行动,可以包括如果在监测操作中执行的一个或多个测试暗示在分布式被监测实体500中存在问题或故障,那么发送通知528给分布式使用者实体506。特别关心的故障是分布式使用者实体506所期望的服务的故障。由分布式被监测实体500提供的其他服务可以不被测试,或者那些服务中的故障不触发通知528。取决于特定的实施,由第三方分布式监测实体502提供的服务可以被提供,并向分布式使用者实体506收取监测服务的费用。

在本发明的另一种实施方案中,第三方分布式监测实体502联系分布式公布实体504,以获得关于将在分布式被监测实体500上执行的测试操作的信息。在又一种实施方案中,为了该信息,第三方分布式监测实体502联系分布式被监测实体500本身。在又一种实施方案中,第三方分布式监测实体502可以推断用于监测分布式被监测实体500的适当方法,这是通过检查从分布式公布实体504或从其他来源得到的关于该实体的其他信息。

在本发明的又一种实施方案中,第三方分布式监测实体502公布或换句话说使关于第三方分布式监测实体502已经监测哪个分布式被监测实体的信息可用。通过公布该类型的信息,分布式使用者实体,例如分布式使用者实体506可以选出并请求已经从事给定分布式被监测实体,例如分布式被监测实体500的监测的第三方分布式监测实体的监测服务,以接受收费价格上的折扣或为了效率。

现在转向图6,根据本发明优选实施方案的用于确定和监测实体的过程的流程图被描绘。图6中所说明的过程可以在客户端,例如图4中的分布式使用者实体404中实施。

过程通过确定服务的需要而开始(方框600)。提供者和监测方法的列表从分布式公布实体,例如图4中的分布式公布实体404请求(方框602)。从分布式公布实体接收提供者和监测方法的列表(方框604)。从列表中选出一个分布式监测实体提供者,并且监测方法被存储(方框606)。取决于特定的实施,多于一个实体可以被选择。与提供服务给选定分布式使用者实体的选定分布式被监测实体形成协定(方框608)。该协定可以使用目前所采用的各种自动协商协议或方法来形成。作出关于协定是否终止的判定(方框610)。该协定可以在协定中指定的各种条件下终止。例如,协定可以在设定的时间量之后、在协定已没被更新设定的时间量之后、在某次事务之后,在任何一方启动时,或者基于所给出的某个市场条件,例如货物或服务的价格在某个选定值之上或之下而终止。协定终止的另一种触发可以是使用本发明所通告的测试失败。随着该类型的失败,过程将回到方框600处图6的开始。如果协定没有终止,客户端随分布式被监测实体一起工作(方框612)。这操作可以依赖于由分布式被监测实体提供给分布式使用者实体的服务而变化。操作可以包括,例如语言翻译、股票市场报价、新闻更新、数学计算、二进制数据的存储与检索、数据库搜索、内容提供例如流式音频或视频,以及天气预报。

接下来,作出关于监测方法是否要求分布式被监测实体的测试的判定(方框614)。如果监测方法要求测试,测试请求发送给分布式被监测实体(方框616),并且从分布式被监测实体接收应答(方框618)。基本地,方框620用来确定分布式被监测实体是如预期地运行还是已出现错误或故障。如果应答不像在监测方法中所指定的那样,那么采取纠正行动(方框622),并且过程回到上述的方框610。在某些情况下,取决于纠正行动的失败和成功,过程可能无法回到方框610。如果分布式被监测实体已经历严重故障并且纠正行动未能修复该故障,这种情况可能发生。在这种情况下,分布式被监测实体可能无法正常地工作。

在方框622中执行的纠正行动可以采取各种形式,包括例如重新启动分布式被监测实体、发送通知给操作员、选择另外的分布式被监测实体、终止分布式被监测实体的执行,或者在日志文件中生成一个条目。所采取的恢复或纠正行动可以是基于匹配选定准则的测试结果而发送的特定信息。例如,如果从监测方法的应用中没有接收到响应,那么信息可以指示实体不可用。如果响应于测试而返回错误,那么信息可以指示实体不正确地工作。这些信息可以发送给各种实体,包括例如请求监测的分布式使用者实体以及分布式被监测实体在那里登记的分布式公布实体。此外,响应于匹配选定准则的测试,纠正行动也可以包括执行程序或过程。例如,纠正行动可以包括启动标准问题判定程序或过程,并给予它包含足够信息的参数,以确定测试失败的实体,以及失败了的测试的性质。分布式使用者实体知道尝试哪些纠正措施的一种方法是通过查阅关于在这种情况下该做什么的它自己的内部规则。分布式使用者实体知道尝试哪些纠正措施的另一种方法是通过找到与从分布式公布实体接收到的测试方法信息捆绑在一起的那些信息。另外的纠正行动可以包括当测试结果匹配选定准则时,采取关于分布式被监测实体的可能打破该实体中的内部死锁的行动。关于打破内部死锁,请求可以发送给分布式被监测实体在其上运行的平台。该请求可以是要求平台终止等候加锁已有某个选定时段的分布式被监测实体的任何线程。指示该纠正行动的准则可以基于特定实施所希望的任何规则。

再次参考方框620,如果应答像在监测方法中所指定的那样,那么过程回到上述的方框610。再次转到方框614,如果监测方法不要求测试,那么过程回到上述的方框610。再次参考方框610,如果协定终止,过程结束。

现在参考图7,根据本发明优选实施方案的第三方分布式监测实体用来监测实体的过程的流程图被描述。图7中说明的过程可以在第三方分布式监测实体,例如图5中的第三方分布式监测实体502中实施。

过程通过向分布式公布实体登记而开始(方框700)。在方框700中,第三方分布式监测实体发送关于该实体可以执行的监测操作的信息。信息也可以确定可被监测的特定实体。其后,过程等待请求(方框702)。在方框702中,所等待的请求是来自实体的请求,例如来自期望监测提供服务的实体的分布式使用者实体的请求。从分布式使用者实体接收请求,并通过特定的监测方法来监测分布式被监测实体(方框704)。与分布式使用者实体形成协定(方框706)。该协定可以通过任何目前已知或使用的协商协议来达成。例如,分布式使用者实体可以向第三方分布式监测实体提议一组标准监测协定的一种,而后者可以接受该提议。可选地,监测协定可以通过各种自动协商协议的任何一种或本领域已知的其他方法来形成。在任何一种情况下,作为协定的一部分,分布式使用者实体将向第三方分布式监测实体提供足以使它可以执行分布式被监测实体的所请求监测的信息。

其后,作出协定是否终止的判定(方框708)。如上所述,各种因素可以导致协定终止。最通常的因素典型地是时间。如果协定没有终止,那么作出关于为分布式被监测实体确定的监测方法是否要求测试的判定(方框710)。如果监测方法要求测试,那么测试请求发送给分布式被监测实体并接收应答(方框712)。

接下来,作出关于应答中的结果是否像在监测方法中所指定的那样的判定(方框716)。如果应答中的结果不像监测方法中所指定的那样,那么通知发送给分布式使用者实体(方框718)并且过程返回到上述的方框708。再次参考方框716,如果应答中的结果像测试方法中所指定的那样,那么过程返回到上述的方框708。再次转到方框710,如果监测方法还没有要求测试,那么过程返回到上述的方框708。再次参考方框708,如果协定终止,那么过程结束。

现在参考图8,说明根据本发明优选实施方案用于公布实体的监测方法的数据结构的图表被描述。数据结构800是可以用来向实体,例如分布式使用者实体或第三方分布式监测实体提供信息的数据结构的例子。区段802包含一些描述行,它们描述可在语言转换服务上执行以确定它是否正确地执行其基本功能的操作,以及如果元素正确地执行其基本功能将从该操作接收到的应答。区段804包含一些描述行,它们描述特定服务端口类型的Web服务端口可以使用在区段802中描述的操作和预期应答来测试的事实。

现有技术发送数据结构,例如数据结构800,但区段802和804不作为一般WSDL段落的一部分。本发明加上信息,例如说明性的区段802和804,以提供上述的监测机制。区段804包括声明,即端口类型可以使用特定操作并期待响应于该操作而返回的特定信息来测试。区段802定义操作和应答。区段802和804中的行作为WSDL的扩展提供,其他部分是标准的WSDL编码。图8中所说明的例子使用可扩展标记语言(XML)。该例子当做示例提供,而并不打算将本发明限制于使用该特定格式。取决于特定的实施,任何其他格式都可以使用。

因此,本发明提供一种用于在自动计算系统中公布和提供用以确定和监测实体的信息的改进方法、装置与计算机指令。该机制使用标准化语言,例如WSDL或UDDL,以提供或公布关于监测方法的信息,该监测方法可以用于已用本发明的机制登记的特定实体。以这种方式,客户端,例如分布式使用者实体,可以请求和接收能够提供所期望服务的实体的确定。除了服务的确定以外,本发明的机制还提供信息,该信息指示提供服务的实体如何可以被监测以证实该实体能够提供如客户端所要求的服务。通过该信息,客户端能够监测服务并且如果监测指示实体不能以所要求的方式工作则采取纠正行动。

重要地要注意到,虽然本发明已在全面运行的数据处理系统环境下描述,但本领域技术人员应当认识到,本发明的过程能够以计算机可读指令媒介形式及多种形式来分布,并且本发明同样地适用,而不管实际用来执行分布的信号承载媒介的具体类型。计算机可读媒介的例子包括可记录型媒介,例如软盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM;以及传输型媒介,例如数字和模拟通信链路、使用传输形式的有线或无线通信链路例如无线电频率和光波传输。计算机可读媒介可以采取可为特定数据处理系统中的实际使用而解码的编码格式的形式。

本发明的描述已为了说明和描述的目的而给出,但不打算作为彻底不遗漏的或局限于以所公开形式的本发明。许多修改和改变对于本领域技术人员将是显然的。实施方案被选择和描述,以便最好地说明本发明的原理、实际应用,以及使本领域其他技术人员能够理解本发明的具有适合于所考虑的特定应用的各种修改的各种实施方案。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号