CN1784661A - 分布式web服务的上下文中的自主故障转移 - Google Patents

分布式web服务的上下文中的自主故障转移 Download PDF

Info

Publication number
CN1784661A
CN1784661A CNA2004800120046A CN200480012004A CN1784661A CN 1784661 A CN1784661 A CN 1784661A CN A2004800120046 A CNA2004800120046 A CN A2004800120046A CN 200480012004 A CN200480012004 A CN 200480012004A CN 1784661 A CN1784661 A CN 1784661A
Authority
CN
China
Prior art keywords
node
service instance
replacement
grid
service
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.)
Granted
Application number
CNA2004800120046A
Other languages
English (en)
Other versions
CN100514306C (zh
Inventor
罗纳德·多伊勒
戴维·路易斯·卡明斯基
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 CN1784661A publication Critical patent/CN1784661A/zh
Application granted granted Critical
Publication of CN100514306C publication Critical patent/CN100514306C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computer And Data Communications (AREA)

Abstract

已经被配置为进行自主故障转移的网格协调器可以包括以通信方式链接到服务网格中的许多网格主机的监视器。量度存储器可以连接到监视器并被配置为在网格主机中存储单个服务实例的服务量度。优化逻辑可以被编程为在为发生故障的网格主机中的一组服务实例存储的量度,以及为提议的替换网格主机确定的平台量度之间计算“最佳匹配”。最后,故障转移处理器可以连接到监视器和优化逻辑并以通信方式链接到网格主机,以在提议的替换网格主机中创建新的一组服务实例,以便根据在优化逻辑中计算的“最佳匹配”替换发生故障的网格主机中的服务实例集合。

Description

分布式WEB服务的上下文中的自主故障转移
技术领域
本发明涉及分布式计算的领域,包括Web服务,具体来说,涉及在分布式Web服务的上下文中管理自主故障转移。
背景技术
Web服务代表了分布式计算的前沿,被视为开发用于支持World Wide Web上的基于组件的应用程序的快速开发的真正通用的模型的基础。在当前技术中,已知Web服务包括许多描述面向服务的基于组件的应用程序体系结构的新兴标准。具体来说,Web服务是松散耦合的,可重用的软件组件,它们从语义上封装单独的功能,并且是分布式的,并通过标准因特网协议以编程方式来对它们访问。
在概念上,Web服务代表其中进程内的单独的任务在值网络内广泛地分布的模型。值得注意的是,许多工业专家认为面向服务的Web服务倡议是因特网的下一个发展阶段。通常,Web服务可以通过诸如Web服务定义语言(WSDL)之类的接口来进行定义,并可以根据该接口来实现,尽管实现方式的细节无关紧要,只要该实现方式符合Web服务接口即可。一旦根据对应的接口实现了Web服务,则可以向Web服务注册机构(如当前技术中已知的通用说明、发现和集成(UDDI))注册该实现方式。在注册时,Web服务可以被服务请求者通过使用任何支持消息协议,包括简单对象访问协议(SOAP)来进行访问。
在支持Web服务的面向服务的应用程序环境中,查找可靠的服务并实时动态地集成这些可靠的服务以满足应用程序的目标已经证明是有问题的。尽管注册表、目录和发现协议提供了用于实现服务检测和服务到服务的互连逻辑的基本结构,但是,仅凭注册表、目录和发现协议还不能用于实现分布式互操作性。相反地,需要更加结构化的、形式化的机制来促进形成统一的应用程序时的Web服务的分布。
值得注意的是,通过开放式网格服务体系结构(OGSA)的网格机制的生理机能可以跨分布式系统地在发现以及在Web服务(以下简称为“网格服务”)的绑定中提供协议,否则,仅通过使用注册表、目录和发现协议是不可能实现的。如在Ian Foster、Carl Kesselman和Steven Tuecke所著的The Anatomy of the Grid,[Intl J.Supercomputer Applications(2001)]和Ian Foster、Carl Kesselman、Jeffrey M.Nick和Steven Tuecke所著的The Physiology of theGrid,[Globus.org(June 22,2002)]中所描述的,网格机制可以提供分布式计算基础结构,通过该基础结构,可以创建、命名网格服务实例,并被发出请求的客户端发现。
网格服务通过提供增强的资源共享和调度支持、完善的分布式应用程序通常需要的长寿的状态的支持,以及企业之间的协作的支持来延伸Web服务。此外,尽管仅凭Web服务可以满足持久服务的发现和调用,但是,网格服务支持可以动态地创建和损坏的临时服务实例。使用网格服务的显著优点可以包括由于计算资源的比较有效的利用而使得拥有信息技术的成本降低,以及集成不同的计算组件变得更加容易。如此,网格机制,具体来说,符合OGSA的网格机制,可以实现面向服务的体系结构,通过该体系结构,可以提供分布式系统集成的基础-甚至可以跨组织域。
在服务网格内,提供基础结构的服务可以提供用于托管诸如网格服务之类的分布式服务的执行的处理资源。提供基础结构的服务可以包括一组资源,包括服务器计算设备、存储器系统,包括直接连接的存储器,网络连接的存储器和存储区域网络,处理和通信带宽等等。在提供基础结构的服务内处理的单个事务可以消耗这些资源的不同组合。
值得注意的是,OGSA定义了其中服务实例可以部署到服务网格内的一个或多个不同位置的体系结构。相应地,客户端访问特定服务的实例的请求可以被路由到被视为对于该请求来说特定服务的最佳实例的实例。为此,单个服务实例可以基于优化标准以战略性的方式被复制到服务网格中的不同节点。优化标准通常可以解析为可以访问特定资源的节点、具有与其他重要服务实例共存的服务实例的节点,相对于特定客户端的位置等等。
当托管了服务网格中的服务实例的一个服务实例或节点发生故障时,不管是什么原因,故障转移策略都可以变为服务网格的操作的重要方面。在这方面,至关重要的是,当在服务网格中的节点或服务实例中检测到故障时,随后的访问发生故障的节点中的服务实例内的服务功能的请求被重新路由到服务网格中的别处,到所希望的服务的其他实例。重要的是,这样的重新路由必须透明地进行,以便不干扰服务网格的虚拟组织方面。此外,尽管在当前技术中故障转移重新路由是已知的,但是,很少注意服务网格中的发生故障的服务实例的重新部署。
发明内容
优选情况下,本发明涉及分布式计算,包括Web服务和网格服务(特别是网格服务故障转移)。
根据优选实施例的本发明是配置为在分布式Web服务的上下文中管理自主故障转移的系统、方法和设备。
根据一个方面,提供了一种用于进行自主故障转移的方法,包括下列步骤:收集节点中的服务实例的量度;检测所述节点中的故障;在检测到所述故障时,定位一组替换节点并确定每一个所述替换节点的平台量度;以及,基于所述收集的量度和所述平台量度,在所述替换节点的最佳地选择的替换节点中创建新的替换服务实例。
关于这一点,根据优选实施例,在收集的量度和平台量度之间执行最佳匹配分析,以识别将在其中创建新的替换服务实例的最佳替换节点。然后,优选情况下,在识别的最佳替换节点中创建这样的新的替换服务实例。
在一些情况下,觉察到单个替换节点将能够托管新创建的替换服务实例,以便不大可能在任何一个服务实例中导致性能的下降。可是,在许多其他情况下,跨多个替换节点,将需要新的和预先存在的服务实例的比较复杂的重新布局。关于这一点,根据优选实施例,创建步骤包括,另外收集最佳替换节点中的现有服务实例的量度。优选情况下,在收集和另外收集的量度两者和最佳替换节点的平台量度之间执行最佳匹配分析。随后,优选情况下,在最佳替换节点中创建一组新的替换服务实例,以与一部分现有服务实例共存,在该部分现有服务实例中,计算新的替换服务实例集合和现有服务实例的部分,以便在最佳替换节点中最佳地合并。比较起来,优选情况下,将现有服务实例的其他实例移动到其他替换节点,优选情况下,在其他替换节点中创建其余的新的替换服务实例集合。
根据优选实施例,量度可以包括从由网格主机中消耗的资源、优选的操作系统平台、网格主机中需要的最少资源、网格主机中的供消耗的优选资源构成的组中选择的至少一个量度。
另外,在本发明的再一个优选实施例中,量度包括从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个额外的量度。相应地,根据优选实施例,可以在收集和另外收集的量度两者和最佳替换节点的平台量度之间执行最佳匹配分析,同时给从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度加权。
根据优选实施例,基于收集的量度和平台量度,在替换节点的最佳地选择的替换节点中创建新的替换服务实例包括下列步骤:另外收集最佳替换节点中的现有服务实例的量度;在所述收集和另外收集的量度两者和所述最佳替换节点的平台量度之间执行最佳匹配分析;在所述最佳替换节点中创建一组新的替换服务实例,以与一部分所述现有服务实例共存,在该部分所述现有服务实例中,计算新的替换服务实例的所述集和所述现有服务实例的所述部分,以便在所述最佳替换节点中最佳地合并;以及,将所述现有服务实例的其他实例移动到其他替换节点,并在所述其他替换节点中创建其余的新的替换服务实例集合。
根据优选实施例,基于收集的量度和平台量度,在替换节点的最佳地选择的替换节点中创建新的替换服务实例包括下列步骤:另外收集最佳替换节点中的现有服务实例的量度;在所述收集和另外收集的量度两者和所述最佳替换节点的平台量度之间执行最佳匹配分析,同时给从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度加权;在所述最佳替换节点中创建一组新的替换服务实例,以与一部分所述现有服务实例共存,在该部分所述现有服务实例中,计算新的替换服务实例的所述集和所述现有服务实例的所述部分,以便根据所述加权的至少一个量度来在所述最佳替换节点中最佳地合并;以及,将所述现有服务实例的其他实例移动到其他替换节点,并在所述其他替换节点中创建其余的新的替换服务实例集合。
根据另一个方面,本发明提供一种网格协调器,包括:以通信方式链接到服务网格中的多个网格主机的监视器;连接到所述监视器并被配置为在所述网格主机中存储单个服务实例的服务量度的量度存储器;优化逻辑,被编程为在为发生故障的网格主机中的一组服务实例存储的量度,以及为提议的替换网格主机确定的平台量度之间计算“最佳匹配”;以及,连接到所述监视器和所述优化逻辑的并以通信方式链接到所述网格主机的故障转移处理器,以在所述提议的替换网格主机中创建新的一组服务实例,以便根据在所述优化逻辑中计算的所述“最佳匹配”替换所述发生故障的网格主机中的所述服务实例集合。
优选情况下,监视器包括位于所述网格主机中的多个协作监视进程,每一个协作监视进程具有将对应的网格主机的状态报告到所述故障转移处理器的配置。
优选情况下,服务量度包括从由网格主机中消耗的资源、优选的操作系统平台、网格主机中需要的最少资源、网格主机中的供消耗的优选资源构成的组中选择的至少一个量度。优选情况下,服务量度进一步包括从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度。
根据另一个方面,提供了一种在其上存储了用于管理自主故障转移的计算机程序的机器可读的存储器,计算机程序包括用于使机器执行下列步骤的例行指令集:收集节点中的服务实例的量度;检测所述节点中的故障;在检测到所述故障时,定位一组替换节点并确定每一个所述替换节点的平台量度;以及,基于所述收集的量度和所述平台量度,在所述替换节点的最佳地选择的替换节点中创建新的替换服务实例。
优选情况下,所述量度包括从由网格主机中消耗的资源、优选的操作系统平台、网格主机中需要的最少资源、网格主机中的供消耗的优选资源构成的组中选择的至少一个量度。
优选情况下,量度进一步包括从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度。
优选情况下,创建步骤包括下列步骤:在所述收集的量度和所述平台量度之间执行最佳匹配分析,以识别将在其中创建新的替换服务实例的最佳替换节点;以及,在所述识别的最佳替换节点中创建新的替换服务实例。
优选情况下,创建步骤包括下列步骤:另外收集最佳替换节点中的现有服务实例的量度;在所述收集和另外收集的量度两者和所述最佳替换节点的平台量度之间执行最佳匹配分析;在所述最佳替换节点中创建一组新的替换服务实例,以与一部分所述现有服务实例共存,在该部分所述现有服务实例中,计算新的替换服务实例的所述集和所述现有服务实例的所述部分,以便在所述最佳替换节点中最佳地合并;以及,将所述现有服务实例的其他实例移动到其他替换节点,并在所述其他替换节点中创建其余的新的替换服务实例集合。
在优选实施例中,创建步骤包括下列步骤:另外收集最佳替换节点中的现有服务实例的量度;在所述收集和另外收集的量度两者和所述最佳替换节点的平台量度之间执行最佳匹配分析,同时给从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度加权;在所述最佳替换节点中创建一组新的替换服务实例,以与一部分所述现有服务实例共存,在该部分所述现有服务实例中,计算新的替换服务实例的所述集和所述现有服务实例的所述部分,以便根据所述加权的至少一个量度来在所述最佳替换节点中最佳地合并;以及,将所述现有服务实例的其他实例移动到其他替换节点,并在所述其他替换节点中创建其余的新的替换服务实例集合。
根据另一个方面,提供了包括程序代码装置的计算机程序,当所述程序在计算机上运行时,用于执行下列方法步骤,该步骤包括:收集节点中的服务实例的量度;检测所述节点中的故障;在检测到所述故障时,定位一组替换节点并确定每一个所述替换节点的平台量度;以及,基于所述收集的量度和所述平台量度,在所述替换节点的最佳地选择的替换节点中创建新的替换服务实例。
优选情况下,还提供了用于进行自主故障转移的设备,包括:用于收集节点中的服务实例的量度的装置;用于检测所述节点中的故障的装置;用于响应于检测到所述故障的情况,定位一组替换节点并确定每一个所述替换节点的平台量度的装置;以及,基于所述收集的量度和所述平台量度,在所述替换节点的最佳地选择的替换节点中创建新的替换服务实例的装置。
附图说明
现在将参考下面的附图,只作为示例,对本发明的优选实施例进行描述:
图1是根据本发明的优选实施例的被配置为自主故障转移的服务网格的示意图;
图2是根据本发明的优选实施例的图1的服务网格中的进行故障转移优化的过程的方框图;以及,
图3是根据本发明的优选实施例的图1的服务网格中的用于管理自主故障转移的过程的方框图。
具体实施方式
根据优选实施例,说明了一种用于用于管理诸如Web服务或网格服务托管基础结构之类的服务基础结构中的自主故障转移的方法和系统。在对网格服务托管基础结构的具体参考中,优选情况下,检测发生故障的网格托管节点,优选情况下,判断发生故障的节点中托管的对应的网格服务集。对于对应的集中的每一个服务,可以确定计算要求、计算性能和成本/收入特征。此外,优选情况下,识别可以容纳对应的集中的网格服务的新实例的现有的网格服务主机节点。在可以识别可以容纳对应的集中的所有服务的主机节点的情况下,优选情况下,在识别的主机节点中实例化该集中的服务。否则,根据一个或多个确定的计算要求、性能和成本/收入特征,优选情况下,优化一个或多个主机节点中的服务的放置。
关于这一点,对每一个服务实例进行监视,以便了解计算要求、性能量度和成本/收入特征。作为示例,计算要求可以包括操作系统要求和硬件资源要求。比较起来,性能量度可以包括资源消耗量度,如在服务实例的操作过程中消耗的通信带宽、处理器、存储器或磁盘存储器。最后,成本/收入特征可以包括每个消耗的资源的成本,以及每个消耗的资源的收入。在任何情况下,优选情况下,在每一个服务的操作过程中,动态地记录量度。如此,预计量度将随着时间而变化。
响应检测到节点故障的情况,优选情况下,在一个节点中放置较高优先级的服务,这样的较高优先级的服务可以享受符合或超过发生故障的节点中的以前的级别的资源消耗级别。然而,在资源有限上下文中,在替换节点缺乏足够的资源以在发生故障的节点的以前的资源消耗级别容纳发生故障的节点中的所有服务的新实例的情况下,可以给较低的优先级的服务分配甚至比发生故障的节点中先前分配的更少的资源。为避免此情况,优选情况下,使用多个替换节点来托管服务的新实例,其中,该集中的服务的拆分所产生的性能影响不会重于由于分配较低的优先级服务的替换节点中的较低的资源级别所造成的性能影响。
在任何情况下,尽管本发明可以在分布式的Web服务集的上下文中,或在网格服务基础结构的比较特定的情况下来实现,但是,在本发明的优选实施例中,网格服务基础结构被配置为自主故障转移,如这里所描述的。为此,图1是根据本发明的优选实施例的被配置为自主故障转移的服务网格的示意图。对熟练的技术人员显而易见的是,服务网格可以是这样的Web服务网格:其中配置了一个或多个网格主机120A、120B,它们跨计算机通信网络110(如因特网)以网格方式以通信方式彼此链接在一起。单个发出请求的客户端100可以请求从一个或多个网格主机120A、120B来访问Web服务。具体来说,如在当前技术中已知的,SOAP编码的消息可以在发出请求的客户端100和驻留在相应的网格主机120A、120B中的网格服务130A、130B之间来回被路由。
具体来说,客户端100可以通过同样地从网格协调器150请求来请求访问单个Web服务。具体来说,可以在消息路由器140中接收SOAP编码的消息,这些消息可以有选择地被路由到已知的网格协调器150集中的一个网格协调器(只显示了一个)。对于接收到的每一个消息,网格协调器150优选情况下通过查询已知的网格主机120A、120B内托管的已知的网格服务130A、130B的服务注册表190来查找服务网格中的被请求的Web服务的所希望的实例。随后,网格服务协调器150中的请求路由逻辑160优选情况下将请求路由到网格主机120A、120B的相应的网格主机中的网格服务130A、130B的所选择的一个网格服务。
那些熟练的技术人员将认识到,网格主机120A、120B可以以集中方式位于服务器计算设备内或以分布式方式跨多个服务器计算设备地布置。网格主机120A、120B可以包括诸如计算设备之类的物理主机,或诸如虚拟机或物理主机内的进程之类的虚拟主机。不论是哪一种情况,通常,每一个网格主机120A、120B可以被视为其中Web服务可以被实例化、维护和损坏的主机节点。
重要的是,网格服务协调器150优选情况下实现如OGSA定义的并且根据Globus Project,Globus Toolkit Futures:An OpenGrid Services Architecture,Globus Tutorial,Argonne NationalLaboratory(January 29,2002)说明的接口的网格服务接口。如在当前技术中已知的,符合OGSA的网格服务接口可以包括下列接口和行为:
1.Web服务创建(工厂)
2.全局命名(网格服务句柄)和参考(网格服务参考)
3.使用寿命管理
4.注册和发现
5.授权
6.通知
7.并行性
8.可管理性
关于这一点,网格服务协调器150优选情况下包括能够使用“工厂创建服务”将所选择的Web服务的实例克隆到新的或预先存在的应用程序容器中的工厂接口。
具体来说,根据优选实施例,网格服务协调器150可以请求跨一个或多个远程网格主机120A、120B地实例化被请求的Web服务的网格服务实例130A、130B。因此,响应接收在指定的Web服务中进行处理的服务请求的情况,不管指定的Web服务的任何特定实例,网格服务协调器150中的请求路由逻辑160优选情况下选择网格主机120A、120B内的服务实例130A、130B中的特定的一个服务实例,以根据任何数量路由标准来处理服务请求。
根据本发明的优选实施例,故障转移逻辑170和优化量度180的存储器两者都包括在网格协调器150中,完全地或通过关联来进行。优化量度180可以包括不同的静态和动态参数以及单个服务实例130A、130B的操作与关联测量的列表。在这方面,优化量度180优选情况下包括在网格主机120A、120B中消耗的资源的测量、优选的操作系统平台、需要的最少资源,以及需要的优选资源。此外,优化量度180优选情况下为每一个单个服务实例130A、130B指定性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入。值得注意的是,优化量度180的存储器中包括的数据优选情况下通过连接到优化量度180(优选情况下,收集单个服务实例130A、130B的性能数据)的存储器监视器(未显示)的操作定期更新。
随着情况的产生,故障转移逻辑170优选情况下能够检测一个或多个服务实例所在的的网格主机120A、120B中的发生故障的那一个。识别发生故障的网格主机的情况下,故障转移逻辑170优选情况下查找一个或多个替换网格主机。替换网格主机可以包括能够在发生故障的网格主机内容纳所有服务实例的网格主机。相反,替换网格主机可以包括已经托管了服务实例并且目前没有分配全部主机资源供发生故障的网格主机中的服务实例使用的网格主机。在可以识别几乎相同或完全相同的替换网格主机的情况下,优选情况下,在识别的替换主机中创建驻留在发生故障的grid主机中的服务实例的新实例。否则,可以执行故障转移优化的过程,以便最佳地放置驻留在发生故障的网格主机中的服务实例的新实例。
图2是根据本发明的优选实施例的图1的服务网格中的进行故障转移优化的过程的方框图。根据本发明的布局,网格协调器215可以监视所选择的节点210X、210Y、210Z中工作的单个服务实例260A、260B、260C的操作。在监视单个服务实例260A、260B、260C的过程中,优选情况下,对于服务实例260A、260B、260C中的每一单个服务实例,记录了服务量度230。具体来说,优选情况下,对服务实例260A、260B、260C中的每一个服务实例进行监视,以便了解计算要求、性能量度和成本/收入特征。作为示例,计算要求可以包括操作系统要求和硬件资源要求。比较起来,性能量度可以包括资源消耗量度,如在服务实例的操作过程中消耗的通信带宽、处理器、存储器或磁盘存储器。最后,成本/收入特征可以包括每个消耗的资源的成本,以及每个消耗的资源的收入。
在检测到特定被监视的节点中的故障时,例如,服务实例260A、260C所在的节点210Y,优选情况下,优化逻辑220尝试根据下列过程进行故障转移。首先,优选情况下,识别一个或多个替换节点240A、240B。优选情况下,为每一个相应的替换节点240A、240B确定单个平台量度250A、250B。单个平台量度250A、250B可以包括,计算诸如处理器类型、操作系统类型、存储器和storage数量等等。单个平台量度250A、250B进一步可以包括替换节点250A、250B的动态地指定的状态,如消耗的计算资源,被托管的服务实例的数量和身份,等等。
在图2的典型的情况下,优化逻辑220最初可以根据优选实施例判断在发生故障的节点210Y内托管的服务260A、260C是否可以在其中一个被识别的替换节点240A、240B中完全地被重新实例化,以便服务260A、260C可以继续在发生故障的节点210Y中预先实现的性能级别下工作。关于这一点,作为一个简单情况,在已经判断替换节点240A包括能够在发生故障的节点210Y中预先实现的性能级别下容纳服务260A、260C的新实例的计算资源的情况下,优选情况下,将服务260A、260C的新实例放在替换节点240A内。
相反,在替换节点240A、240B中没有一个替换节点能够在发生故障的节点210Y中预先实现的性能级别下容纳服务260A、260C的新实例的的情况下,优选情况下,基于服务260A、260C的实例的服务量度230,以最佳方式,跨替换节点240A、240B中的一个或多个,放置服务260A、260C的新实例。具体来说,优选情况下,跨替换节点240A、240B两者放置服务260A、260C的新实例,以便任何一个替换节点240A、240B不必容纳服务260A、260C两者的新实例。或者,优选情况下,服务260A、260C的实例的服务量度230与平台量度250A、250B匹配,以识别服务260A、260C的任何一个实例的最兼容的平台。例如,在这方面,可以确定优选的操作系统。
在本发明的优选实施例中,对于服务260A、260C的每一个实例,确定成本对性能和收入对性能比。如此,服务260A、260C的新实例可以放置在替换节点240A、240B中的一个或多个替换节点内,以便优化这样的可能性:享受较高的收入/性能和较低的成本/性能比的服务260A、260C的实例将更可能地在替换节点内实现更高的性能,而具有较低的收入/性能和较高的成本/性能比的服务260A、260C的实例将让步于服务260A、260C的前面的实例。为帮助前面的计算,可以对服务量度230和平台量度250A、250B应用最佳匹配分析。
图3是根据本发明的优选实施例的图1的服务网格中的用于管理自主故障转移的过程的方框图。在方框310中开始,优选情况下,在网格协调器内检测节点故障。在方框320中,优选情况下,识别驻留在发生故障的节点内的每一个服务实例。在方框330中,优选情况下,进一步识别一个或多个替换节点。在方框340中,优选情况下,检索发生故障的节点中的每一个服务实例的记录的量度。或者,对于发生故障的节点中托管的服务的每一个实例,可以检索该服务的跨其他节点的多个实例的记录的量度,以便消除该服务的任何一个实例中的异常事件。在任何情况下,在方框350中识别每一个被识别的替换节点的平台量度。
在判断方框360中,优选情况下,基于发生故障的节点中预先体验到的性能,判断被识别的替换节点中是否有某个节点可以容纳服务的新实例,而不需要降低性能。如果是这样,则在方框380中,优选情况下,将服务的新实例放置在能够容纳服务的新实例而不需要性能下降的被识别的替换节点内。否则,在方框370中,优选情况下,执行最佳服务放置分析。具体来说,优选情况下,检索每一个服务的量度,并与每一个潜在的替换节点的量度进行比较。
优选情况下,应用最佳匹配分析,以判断应该在哪些替换节点中创建服务的新实例。特别是,可以给服务量度的不同的元素加权,以强调某些元素比其他元素更重要,例如,“每个百分比的资源消耗的收入”比“优选的操作系统”更重要。因此,可以在替换节点中创建全部新服务实例,而不是一个或多个新服务实例,或跨多个替换节点地分解全部新服务实例,以确保任何一个新服务实例中的性能都不会下降。最后,在可预见任何一个预先存在的服务实例可以通过将新服务放置在替换节点来移动的情况下,可以将方框370的分析延伸到一个或多个替换节点内的预先存在的服务实例。
本发明可以以硬件、软件或硬件和软件的组合实现。本发明的方法和系统可以使用一个计算机系统以集中方式,或者以不同的元素跨多个互连的计算机系统的分布式方式来实现。适于执行这里描述的方法的任何类型的计算机系统或其他设备都适于执行这里描述的功能。典型的硬件和软件的组合可以是具有这样的计算机程序的通用计算机系统,当加载并执行该计算机程序时,控制计算机系统以便它执行这里描述的方法。本发明还可以嵌入在包括实现这里描述的方法的所有特点的计算机程序产品中,这种计算机程序产品在加载到计算机系统中时,能够执行这些方法。
本上下文中的计算机程序或者应用程序是指以任何语言、代码或注释表达的一组指令的任何表达式,用于导致具有信息处理能力的系统直接或者在下列操作中的任何一种或两种操作都执行之后执行特定的功能:a)转换到另一种语言、代码或注释;b)以不同的材料形式再现。具体来说,在不偏离本发明的精神或必需的属性的情况下,本发明可以以其他特定的形式来实现,相应地,在表示本发明的范围时,应该参考下面的权利要求,而不是参考上述说明。

Claims (10)

1.一种用于进行自主故障转移的方法,包括下列步骤:收集节点中的服务实例的量度;检测所述节点中的故障;在检测到所述故障时,定位一组替换节点并确定每一个所述替换节点的平台量度;以及,基于所述收集的量度和所述平台量度,在所述替换节点的最佳地选择的替换节点中创建新的替换服务实例。
2.根据权利要求1所述的方法,其中,所述量度包括从由网格主机中消耗的资源、优选的操作系统平台、网格主机中需要的最少资源、网格主机中的供消耗的优选资源构成的组中选择的至少一个量度。
3.根据权利要求2所述的方法,其中,所述量度进一步包括从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度。
4.根据权利要求1所述的方法,其中,所述创建步骤包括下列步骤:在所述收集的量度和所述平台量度之间执行最佳匹配分析,以识别将在其中创建新的替换服务实例的最佳替换节点;以及,在所述识别的最佳替换节点中创建新的替换服务实例。
5.根据权利要求1所述的方法,其中,所述创建步骤包括下列步骤:另外收集最佳替换节点中的现有服务实例的量度;在所述收集和另外收集的量度两者和所述最佳替换节点的平台量度之间执行最佳匹配分析;在所述最佳替换节点中创建一组新的替换服务实例,以与一部分所述现有服务实例共存,在该部分所述现有服务实例中,计算新的替换服务实例的所述集和所述现有服务实例的所述部分,以便在所述最佳替换节点中最佳地合并;以及,将所述现有服务实例的其他实例移动到其他替换节点,并在所述其他替换节点中创建其余的新的替换服务实例集合。
6.根据权利要求3所述的方法,其中,所述创建步骤包括下列步骤:另外收集最佳替换节点中的现有服务实例的量度;在所述收集和另外收集的量度两者和所述最佳替换节点的平台量度之间执行最佳匹配分析,同时给从由性能的单位成本、资源消耗的单位成本、性能的单位收入以及资源消耗的单位收入构成的组中选择的至少一个量度加权;在所述最佳替换节点中创建一组新的替换服务实例,以与一部分所述现有服务实例共存,在该部分所述现有服务实例中,计算新的替换服务实例的所述集和所述现有服务实例的所述部分,以便根据所述加权的至少一个量度来在所述最佳替换节点中最佳地合并;以及,将所述现有服务实例的其他实例移动到其他替换节点,并在所述其他替换节点中创建其余的新的替换服务实例集合。
7.一种网格协调器,包括:以通信方式链接到服务网格中的多个网格主机的监视器;连接到所述监视器并被配置为在所述网格主机中存储单个服务实例的服务量度的量度存储器;优化逻辑,被编程为在为发生故障的网格主机中的一组服务实例存储的量度,以及为提议的替换网格主机确定的平台量度之间计算“最佳匹配”;以及,连接到所述监视器和所述优化逻辑的并以通信方式链接到所述网格主机的故障转移处理器,以在所述提议的替换网格主机中创建新的一组服务实例,以便根据在所述优化逻辑中计算的所述“最佳匹配”替换所述发生故障的网格主机中的所述服务实例集合。
8.根据权利要求7所述的网格协调器,其中,所述监视器包括位于所述网格主机中的多个协作监视进程,每一个所述协作监视进程具有将对应的网格主机的状态报告到所述故障转移处理器的配置。
9.一种在其上存储了用于管理自主故障转移的计算机程序的机器可读的存储器,计算机程序包括用于使机器执行下列步骤的例行指令集:收集节点中的服务实例的量度;检测所述节点中的故障;在检测到所述故障时,定位一组替换节点并确定每一个所述替换节点的平台量度;以及,基于所述收集的量度和所述平台量度,在所述替换节点的最佳地选择的替换节点中创建新的替换服务实例。
10.包括程序代码装置的计算机程序,当所述程序在计算机上运行时,用于执行权利要求1到6中的任何一个权利要求所述的方法。
CNB2004800120046A 2003-05-15 2004-05-13 分布式web服务的上下文中自主故障转移的方法和设备 Expired - Lifetime CN100514306C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/438,434 2003-05-15
US10/438,434 US7287179B2 (en) 2003-05-15 2003-05-15 Autonomic failover of grid-based services

Publications (2)

Publication Number Publication Date
CN1784661A true CN1784661A (zh) 2006-06-07
CN100514306C CN100514306C (zh) 2009-07-15

Family

ID=33449739

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800120046A Expired - Lifetime CN100514306C (zh) 2003-05-15 2004-05-13 分布式web服务的上下文中自主故障转移的方法和设备

Country Status (7)

Country Link
US (1) US7287179B2 (zh)
JP (1) JP4916881B2 (zh)
KR (1) KR100745893B1 (zh)
CN (1) CN100514306C (zh)
BR (1) BRPI0410366A (zh)
TW (1) TWI282228B (zh)
WO (1) WO2004102386A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621544A (zh) * 2008-06-30 2010-01-06 佳能株式会社 服务流处理设备和方法
CN101667931B (zh) * 2008-09-04 2012-07-04 阿尔卡特朗讯 自动确定替换故障网络单元的网络单元的设备和方法
CN103365748A (zh) * 2012-03-30 2013-10-23 国际商业机器公司 用于资源放置的计算和协调中的管理域集成的系统和方法
CN103905548A (zh) * 2014-03-27 2014-07-02 南京邮电大学 一种信息服务的替换对象选择方法
CN106716972A (zh) * 2014-09-30 2017-05-24 微软技术许可有限责任公司 半自动故障转移

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0306971D0 (en) * 2003-03-26 2003-04-30 British Telecomm Client server model
US7562254B2 (en) * 2003-07-01 2009-07-14 International Business Machines Corporation Checkpointing and restarting long running web services
CA2435655A1 (en) * 2003-07-21 2005-01-21 Symbium Corporation Embedded system administration
US7584454B1 (en) * 2003-09-10 2009-09-01 Nextaxiom Technology, Inc. Semantic-based transactional support and recovery for nested composite software services
US7581205B1 (en) 2003-09-30 2009-08-25 Nextaxiom Technology, Inc. System and method of implementing a customizable software platform
ATE491300T1 (de) * 2003-10-09 2010-12-15 Telecom Italia Spa Verfahren und syteme zum fehlerschutz in einem kommunikationsnetz
US8225282B1 (en) 2003-11-25 2012-07-17 Nextaxiom Technology, Inc. Semantic-based, service-oriented system and method of developing, programming and managing software modules and software solutions
DE102004005128B3 (de) * 2004-02-02 2005-01-05 Fujitsu Siemens Computers Gmbh Anordnung mehrerer Rechner und Verfahren zum Betreiben einer Anordnung mehrerer Rechner bei einem Rechnerausfall
US8862570B1 (en) 2004-03-02 2014-10-14 Rockstar Consortium Us Lp Method and apparatus for open management of multi-media services
US20050235055A1 (en) * 2004-04-15 2005-10-20 Raytheon Company Graphical user interface for managing HPC clusters
US8335909B2 (en) 2004-04-15 2012-12-18 Raytheon Company Coupling processors to each other for high performance computing (HPC)
US7711977B2 (en) * 2004-04-15 2010-05-04 Raytheon Company System and method for detecting and managing HPC node failure
US8190714B2 (en) * 2004-04-15 2012-05-29 Raytheon Company System and method for computer cluster virtualization using dynamic boot images and virtual disk
US8336040B2 (en) 2004-04-15 2012-12-18 Raytheon Company System and method for topology-aware job scheduling and backfilling in an HPC environment
US9178784B2 (en) * 2004-04-15 2015-11-03 Raytheon Company System and method for cluster management based on HPC architecture
ATE331379T1 (de) * 2004-04-28 2006-07-15 Sap Ag Computersystem und verfahren zur bereitstellung eines fehlerresistenten datenverarbeitungdienstes
US8244882B2 (en) * 2004-11-17 2012-08-14 Raytheon Company On-demand instantiation in a high-performance computing (HPC) system
US7433931B2 (en) * 2004-11-17 2008-10-07 Raytheon Company Scheduling in a high-performance computing (HPC) system
US7475274B2 (en) * 2004-11-17 2009-01-06 Raytheon Company Fault tolerance and recovery in a high-performance computing (HPC) system
CA2504333A1 (en) * 2005-04-15 2006-10-15 Symbium Corporation Programming and development infrastructure for an autonomic element
US20060248015A1 (en) * 2005-04-28 2006-11-02 International Business Machines Corporation Adjusting billing rates based on resource use
US7908190B2 (en) * 2005-08-30 2011-03-15 Sap Ag Systems and methods for applying tax legislation
US7953816B2 (en) * 2006-01-10 2011-05-31 International Business Machines Corporation Virtual memory technique for efficiently solving connected problems in a distributed environment
JP4829670B2 (ja) * 2006-04-28 2011-12-07 株式会社日立製作所 San管理方法およびsan管理システム
US8566439B2 (en) * 2007-10-01 2013-10-22 Ebay Inc Method and system for intelligent request refusal in response to a network deficiency detection
US8886779B2 (en) * 2007-10-19 2014-11-11 Oracle America, Inc. Performance modeling for SOA security appliance
US9178785B1 (en) 2008-01-24 2015-11-03 NextAxiom Technology, Inc Accounting for usage and usage-based pricing of runtime engine
US20100257009A1 (en) * 2009-04-01 2010-10-07 National Ict Australia Limited Service orientated computer system with multiple quality of service controls
US8112659B2 (en) * 2009-06-19 2012-02-07 Oracle International Corporation Reducing recovery time for business organizations in case of disasters
US8874961B2 (en) * 2010-03-22 2014-10-28 Infosys Limited Method and system for automatic failover of distributed query processing using distributed shared memory
US8504672B2 (en) * 2010-11-19 2013-08-06 Silicon Image, Inc. Discovery of electronic devices in a combined network
US8635493B2 (en) * 2011-05-17 2014-01-21 Vmware, Inc. High availability system allowing conditionally reserved computing resource use and reclamation upon a failover
US8862928B2 (en) * 2011-09-20 2014-10-14 Cloudbyte, Inc. Techniques for achieving high availability with multi-tenant storage when a partial fault occurs or when more than two complete faults occur
KR101447024B1 (ko) * 2013-03-20 2014-10-07 국방과학연구소 서비스 기반의 무기체계용 분산식 다계층 시스템의 고장 복구 방법
US10229181B2 (en) * 2013-07-16 2019-03-12 Pankaj Sharma System and method for synchronizing data between communication devices in a networked environment without a central server
US9692663B2 (en) * 2014-02-21 2017-06-27 Ca, Inc. Methods, systems, and computer program products for user side optimization of acquisition of virtualized resources
CN104836850A (zh) * 2015-04-16 2015-08-12 华为技术有限公司 一种实例节点管理的方法及管理设备
US10552272B2 (en) * 2016-12-14 2020-02-04 Nutanix, Inc. Maintaining high availability during N-node failover
US11994964B2 (en) 2021-05-28 2024-05-28 Paypal, Inc. Dynamic node insertion of secondary services for high-availability during main decision failure at runtime

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2106280C (en) * 1992-09-30 2000-01-18 Yennun Huang Apparatus and methods for fault-tolerant computing employing a daemon monitoring process and fault-tolerant library to provide varying degrees of fault tolerance
SE515348C2 (sv) 1995-12-08 2001-07-16 Ericsson Telefon Ab L M Processorredundans i ett distribuerat system
US5805785A (en) * 1996-02-27 1998-09-08 International Business Machines Corporation Method for monitoring and recovery of subsystems in a distributed/clustered system
US5938732A (en) * 1996-12-09 1999-08-17 Sun Microsystems, Inc. Load balancing and failover of network services
US6195760B1 (en) * 1998-07-20 2001-02-27 Lucent Technologies Inc Method and apparatus for providing failure detection and recovery with predetermined degree of replication for distributed applications in a network
JP2001155003A (ja) * 1999-11-30 2001-06-08 Ntt Comware Corp サービス復旧システムおよびその記録媒体
US7181743B2 (en) * 2000-05-25 2007-02-20 The United States Of America As Represented By The Secretary Of The Navy Resource allocation decision function for resource management architecture and corresponding programs therefor
US6982951B2 (en) * 2000-12-21 2006-01-03 At&T Corp. Method for selecting a restoration path in a mesh network
JP2002259147A (ja) * 2001-02-27 2002-09-13 Hitachi Ltd 情報処理装置及びリアルタイム分散処理システム
US20030014507A1 (en) 2001-03-13 2003-01-16 International Business Machines Corporation Method and system for providing performance analysis for clusters
US6922791B2 (en) * 2001-08-09 2005-07-26 Dell Products L.P. Failover system and method for cluster environment
US6823382B2 (en) 2001-08-20 2004-11-23 Altaworks Corporation Monitoring and control engine for multi-tiered service-level management of distributed web-application servers
JP3801904B2 (ja) * 2001-11-06 2006-07-26 アクア化学株式会社 洗浄装置及び洗浄方法
US7200117B2 (en) * 2002-01-31 2007-04-03 Sun Microsystems, Inc. Method of optimizing network capacity and fault tolerance in deadlock-free routing
US7130891B2 (en) * 2002-02-04 2006-10-31 Datasynapse, Inc. Score-based scheduling of service requests in a grid services computing platform
US7647523B2 (en) * 2002-06-12 2010-01-12 International Business Machines Corporation Dynamic binding and fail-over of comparable web service instances in a services grid
JP4133068B2 (ja) * 2002-07-23 2008-08-13 株式会社日立製作所 計算機システム
US7421500B2 (en) * 2003-01-10 2008-09-02 Hewlett-Packard Development Company, L.P. Grid computing control system
US7340654B2 (en) * 2004-06-17 2008-03-04 Platform Computing Corporation Autonomic monitoring in a grid environment

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621544A (zh) * 2008-06-30 2010-01-06 佳能株式会社 服务流处理设备和方法
CN101667931B (zh) * 2008-09-04 2012-07-04 阿尔卡特朗讯 自动确定替换故障网络单元的网络单元的设备和方法
CN103365748A (zh) * 2012-03-30 2013-10-23 国际商业机器公司 用于资源放置的计算和协调中的管理域集成的系统和方法
CN103365748B (zh) * 2012-03-30 2016-03-30 国际商业机器公司 用于资源放置的计算和协调中的管理域集成的系统和方法
CN103905548A (zh) * 2014-03-27 2014-07-02 南京邮电大学 一种信息服务的替换对象选择方法
CN103905548B (zh) * 2014-03-27 2017-02-22 南京邮电大学 一种信息服务的替换对象选择方法
CN106716972A (zh) * 2014-09-30 2017-05-24 微软技术许可有限责任公司 半自动故障转移

Also Published As

Publication number Publication date
TWI282228B (en) 2007-06-01
KR100745893B1 (ko) 2007-08-02
TW200501691A (en) 2005-01-01
JP2007500908A (ja) 2007-01-18
WO2004102386A3 (en) 2005-04-28
US20040243915A1 (en) 2004-12-02
JP4916881B2 (ja) 2012-04-18
WO2004102386A2 (en) 2004-11-25
BRPI0410366A (pt) 2006-05-30
CN100514306C (zh) 2009-07-15
US7287179B2 (en) 2007-10-23
KR20060008891A (ko) 2006-01-27

Similar Documents

Publication Publication Date Title
CN100514306C (zh) 分布式web服务的上下文中自主故障转移的方法和设备
CN104769919B (zh) 对复制型数据库的访问进行负载平衡
JP4954089B2 (ja) グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム
US7743142B2 (en) Verifying resource functionality before use by a grid job submitted to a grid environment
US8140677B2 (en) Autonomic web services hosting service
AU2014346366B2 (en) Partition-based data stream processing framework
US8095935B2 (en) Adapting message delivery assignments with hashing and mapping techniques
CN112532675B (zh) 一种网络边缘计算系统的创建方法、装置及介质
US9026837B2 (en) Resource aware placement of applications in clusters
US8645745B2 (en) Distributed job scheduling in a multi-nodal environment
US7519734B1 (en) System and method for routing service requests
US7870568B2 (en) Adaptive shared computing infrastructure for application server-based deployments
US8112526B2 (en) Process migration based on service availability in a multi-node environment
US20080091806A1 (en) Dynamic On-Demand Clustering
CN1703007A (zh) 检查和修复网络配置的方法和系统
US9317395B2 (en) Usage reporting from a cloud-hosted, distributed system
KR20160083941A (ko) 대규모 데이터 스트림들의 획득, 저장, 및 소비를 위한 관리 서비스
WO2008008883A2 (en) Method for allocating shared computing infrastructure for application server-based deployments
CN1595360A (zh) 用于在分布式计算体系结构中执行作业的系统和方法
CN1841330A (zh) 用于管理多节点smp系统的方法和系统
US7558858B1 (en) High availability infrastructure with active-active designs
KR100669153B1 (ko) 표준 관리 블럭에 기반을 둔 계층적 시스템 관리 시스템및 관리 방법
US8898289B1 (en) Distributed event processing method and architecture
US20030005358A1 (en) Decentralized, self-regulating system for automatically discovering optimal configurations in a failure-rich environment

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
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20090715