CN102739411B - 提供证明服务 - Google Patents

提供证明服务 Download PDF

Info

Publication number
CN102739411B
CN102739411B CN201210086941.2A CN201210086941A CN102739411B CN 102739411 B CN102739411 B CN 102739411B CN 201210086941 A CN201210086941 A CN 201210086941A CN 102739411 B CN102739411 B CN 102739411B
Authority
CN
China
Prior art keywords
server
node
cluster
resource
request
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.)
Active
Application number
CN201210086941.2A
Other languages
English (en)
Other versions
CN102739411A (zh
Inventor
P·普拉哈达
D·M·克鲁斯
M·乔治
J·T·平克顿
T·E·乔利
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN201710656926.XA priority Critical patent/CN107204901B/zh
Publication of CN102739411A publication Critical patent/CN102739411A/zh
Application granted granted Critical
Publication of CN102739411B publication Critical patent/CN102739411B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1895Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for short real-time information, e.g. alarms, notifications, alerts, updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0847Transmission error
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及提供证明服务。描述了用于提供证明服务的实施例,所述证明服务向客户端发送具有资源状态的通知。实施例提供包含各个消息的协议,所述消息用于注册和接收关于资源状态的通知。该协议可以包含用于向群集中的第一节点请求节点信息的消息。该节点信息标识出该群集中的提供证明服务的节点,所述证明服务监控资源。该协议包含用于向证明服务注册关于网络或群集资源的状态或状态改变的通知的消息。该协议还可以包含用于发送具有该资源的状态信息的通知的消息。

Description

提供证明服务
技术领域
本发明涉及提供证明服务。
背景技术
服务器群集常用于提供故障转移和信息到客户端的高可用性。群集通常具有执行用于管理群集故障转移和负载平衡的功能的群集服务。所述群集服务通常提供快速的故障检测以提供最大的服务可用性。然而,从客户端的角度而言,大多数故障检测是通过网络超时来执行的。如果客户端使用传输控制协议(TCP)向群集发起诸如文件访问请求或数据库访问请求之类的请求,则故障在达到超时以前一直未被检测到。客户端对来自服务器的确认等待一预定义的时间段,或者如果客户端已经发出操作并且接收到确认,则该客户端对来自该服务器的响应等待一预定义的时间段。因此,为了检测服务器故障所需的时间可以在相对快速到30秒或更长时间的范围内变化。客户端为了更快速地检测故障,其必须为活动的(即频繁地发送请求)以确定该服务器已经发生故障。一种用于保证快速检测的方式是客户端不断地发送保活(keep-alive)分组以帮助防止空闲客户端在服务器发生故障的情况下不接收网络断开这一情况。然而,保活分组消耗网络带宽。
各实施例正是对于这些和其它考虑事项而做出的。而且,尽管讨论了相对具体的问题,但是应当理解,各实施例不应被限于解决本背景技术中所标识的具体问题。
发明内容
提供本概述来以简化形式介绍将在以下详细描述部分中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
描述了用于提供证明服务的实施例,所述证明服务向经注册的客户端发送对资源状态的通知。实施例提供了包含各个消息的协议,所述消息用于注册和接收关于例如群集或网络中的资源之类的资源的状态的通知。在一个实施例中,该协议包含供客户端向群集中的节点请求证明信息的消息。该证明信息可以标识出该群集中的提供证明服务的节点。该协议附加地包含用于向证明服务注册关于网络或群集资源的状态或状态改变的通知的消息。在一个实施例中,该消息用于注册节点故障的通知。该协议还可以包含供证明服务发送具有该资源的状态信息的通知的消息。实施例还提供了用于从证明服务注销的消息。
各实施例可被实现为计算机进程、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并对用于执行计算机过程的指令的计算机程序编码的计算机存储介质。计算机程序产品还可以是计算系统可读并对用于执行计算机过程的指令的计算机程序编码的载体上的传播信号。
附图说明
参考以下附图描述非限制性和非穷尽的实施例。
图1示出了可用于实现实施例的系统。
图2示出了客户端和节点群集按照一些实施例使用证明协议来交换消息的框图。
图3示出了客户端和文件服务器群集按照一些实施例使用文件访问协议和证明协议来通信的框图。
图4示出了示出可在图3所示环境内进行交换的消息序列的顺序图。
图5示出了按照一些实施例的接收和提供对资源状态信息的通知的操作流程。
图6示出了按照一些实施例的接收和提供对群集资源的状态通知的操作流程。
图7示出了适于实现各实施例的计算环境的框图。
具体实施方式
以下将参考形成本发明一部分并示出各具体示例性实施例的附图更详尽地描述各个实施例。然而各实施例被实现为许多不同的形式并且不应将其解释为限制在此处描述的实施例;相反地,提供这些实施例以使得本公开变得透彻和完整,并且将这些实施例的范围完全传达给本领域普通技术人员。因此,这些实施例可采用硬件实现形式、全软件实现形式或者结合软件和硬件方面的实现形式。因此,以下详细描述并非是局限性的。
图1示出了可用于实现一些实施例的系统100。系统100包括客户端102和106以及服务器群集106。客户端102和104通过网络108与服务器群集106通信。服务器群集106存储信息,该信息被客户端102和104上的应用访问。客户端102和104与群集106建立会话以访问群集106上的信息。尽管在图1中,仅有客户端102和104被示为与群集106通信,但是在其他实施例中,可以存在两个以上客户端从服务器群集106访问信息。
如图1所示,服务器群集106包括服务器106A、106B和106C,所述服务器提供存储在群集106上的信息的高可用性和冗余性二者。在实施例中,群集106可以具有文件系统、数据库、或者由客户端102和104访问的其他信息。尽管图1中示出了3个服务器,但是在其他实施例中,群集106可以包括3个以上服务器或3个以下服务器。
根据一个实施例,附加于存储由客户端102和104访问的信息,群集106还提供证明服务。证明服务允许客户端102和104接收关于由群集106所监控的资源的状态的通知。所述资源可以是群集资源或网络资源。在一个实施例,服务器106A、106B和106C中的每个都能够提供证明服务。也就是说,只要客户端102和104未使用服务器来访问群集资源,则所述客户端就可以向服务器106A、106B或106C中的任何服务器注册证明服务。在其他实施例中,可能仅有群集106的服务器中的一部分提供证明服务。例如,在该实施例中,仅仅106B和106C将运行证明服务。在又一实施例中,群集106可以包括专用于提供证明服务的服务器。对于这些实施例而言,尽管未示出,但是群集106可以包括如下的服务器:所述服务器被专门配置为运行证明服务并且将不提供对客户端102和104的访问。
来自群集106的提供证明服务的服务器从群集106中的资源和/或从网络资源接收事件。服务器处理和存储来自这些事件的信息以跟踪这些资源的状态。响应于这些事件,服务器将向已经向证明服务注册以接收关于资源的状态信息的客户端发出通知。作为一个示例,这些事件可以由运行在群集106上以提供负载平衡和故障检测的群集服务来生成。
如上所述,客户端102和104与群集106通信以向证明服务请求通知。在实施例中,提供由证明服务和客户端102和104使用的证明协议。该协议包含用于允许客户端102和104向群集106中的服务器请求关于证明服务的信息的消息。该信息可以标识出群集106中的哪些服务器提供证明服务。该协议还包含用于注册来自证明服务的通知的消息。由证明服务发送给客户端102和104的关于资源状态的消息还根据证明协议被格式化。
为了示出一个实施例,客户端102建立与群集106的服务器的会话。例如,客户端102可以建立与服务器106A的会话以访问存储在服务器106A上的数据库。由于客户端102从服务器106访问信息,因此其可能想要具有对服务器106A上的任何故障的及早指示。故障的及早检测将允许及早恢复,这减少了客户端102上的应用可能必须等待的时间量。及早检测和恢复还减小了被保留以供客户端102重连到的资源对其他客户端不可用的时间窗口。
为了向证明服务注册,客户端102首先向服务器106A发送根据证明协议被格式化的消息以获得关于群集106上的哪个或哪些服务器运行证明服务的信息。服务器106A用如下的信息进行响应:该信息包含运行证明服务的服务器106B和106C的标识以及为了连接到这些服务器中的任意一个所需的任何信息。在该示例中,基于从服务器106A接收的信息,客户端102向服务器106B发送注册请求以接收服务器106A上的资源的状态或状态改变的通知。当服务器106A上的资源发生故障时、以及之后当该服务器可用于重连时,该客户端将被通知。该状态可以如服务器106A是在线还是离线那样简单。在其他实施例中,通知可以具有更精细的粒度,比如是服务器106A的盘或适配器发生了故障、还是被离线。
在一些实施例中,客户端102可以具有预先确定的方法以用于选择特定的用于联系的服务器以向证明服务注册。例如,客户端可以随机地、以循环方式或者基于其从群集接收的信息来选择服务器。
在客户端102已经向服务器106B注册关于服务器106A上的资源的通知,所述资源的状态的由服务器106B检测到的改变将导致:具有指示所述资源的状态改变的信息的通知被发送给客户端102。例如,该通知可以指示:服务器106A为离线。响应于该通知,客户端102可以停止向服务器106A发送针对信息的请求并且尝试连接到群集106中的另一服务器。可替代地,客户端102可以等待表示服务器106A返回在线的随后通知,使得其可以重连并且再次开始从服务器106A访问信息。
下面的描述仅仅是图1所示的实施例可以如何操作的一个示例。下面将更详细地描述,实施例可以包括不同的步骤或操作。这些实施例是使用任何合适的软件或硬件组件或模块来实现的。
现在转到图2,图2中示出了示出客户端202和204以及节点群集206的软件环境200的框图。按照一些实施例,所述客户端和节点群集使用证明协议来交换信息。示出了图2以图解说明用于使用证明协议的环境的一般性示例。图2的描述旨在是一般性的并且适用于任何数目的情况,比如客户端202和204访问存储在节点群集206上的文件系统,其中节点群集206是具有分布式文件系统的服务器群集。作为另一示例,环境200可以用在客户端202和204访问存储在节点群集206上的数据库的情况下。
如图2所示,客户端202和204访问由节点群集206提供的信息。节点群集206包括3个节点、即节点1、节点2和节点3。如图2所示,节点1、2和3中的每个都包括与客户端202和204通信的各个组件。例如,每个节点都包括客户端访问模块,该客户端访问模块与客户端202和204通信以及建立用于允许所述客户端访问存储在该节点群集上的信息的会话。
在图2所示的实施例中,节点1、2和3还包括证明管理组件,该证明管理组件作为配备在节点群集206上的证明服务的一部分与客户端202和204通信。该证明管理模块提供关于节点群集206中的哪些节点运行证明服务的信息,使得客户端202和204可以向该证明服务注册。另外,证明管理组件还为客户端注册针对资源状态的通知,并且还与图2所示的监控组件通信,该监控组件从节点和网络资源接收和处理事件。该监控组件处理事件并且将状态和状态改变信息提供给证明管理组件,该证明管理组件进而通知注册了资源的状态或状态改变的通知的任何客户端。在一些实施例中,该监控组件可以使用由群集服务提供的API来监控该群集中的资源的状态。
在图2所示的实施例中,客户端202已经建立与节点1的会话,并且使用信道208向节点1的客户端访问组件发送访问请求。客户端202还发起了与节点1的单独的信道(未示出)以接收关于证明服务的信息,比如哪些服务器提供该证明服务。与节点1建立的该单独信道允许节点1传递关于证明服务的信息而不干扰由客户端202发送的访问请求。
在图2中,客户端202已经向节点2上的证明管理组件所提供的证明服务进行了注册。如图2所示,与证明管理组件的通信通过单独的信道210进行。因此,包括状态通知的任何类型的证明信息都不干扰通过信道208的访问请求。以虚线示出的信道216示出了客户端202为了在节点1的资源发生故障的情况下发送访问请求所建立的单独的信道。在一些实施例中,证明管理组件提供如下信息:该信息指示新资源以供客户端202在故障情况下发送访问请求、以及用于连接到该新资源的推荐网络路径和推荐网络路径的数目。
类似地,客户端204已经建立与节点2的会话,并且通过信道212向节点2的客户端访问组件发送访问请求。客户端204已经注册了访问服务,并且使用信道214与节点3的证明管理组件通信。
在一个实施例中,该证明管理组件提供附加的功能。在一些实施例中,所述组件提供负载平衡功能。也就是说,附加于发送关于资源状态的通知,证明管理组件还可以基于用于节点206上的负载平衡的算法来发送客户端202和204连接到不同资源的请求。例如,如图2所示,客户端202与节点1的客户端访问组件通信。附加地,客户端202与节点2的证明管理组件通信,所述证明管理组件向客户端202提供对资源的任何状态改变(比如节点1中的资源发生故障)的通知。在该实施例中,节点2的证明管理组件可以确定节点1由于节点1所服务的密集的访问请求量而表现差(例如高等待时间)。作为另一示例,可以进行确定以从节点2卸载客户端,以允许节点2被关闭用于节能或诸如维护之类的其他原因。根据算法,节点2可以向客户端202发送指示其应当开始向可能未被充分利用的节点3发送任何未来访问请求的通知。然后,客户端202如作为信道216的虚线所示的那样建立与节点3的会话以发送未来请求。在其他实施例中,证明管理组件提供如下信息:该信息不仅指示供客户端202发送访问请求的新资源、而且指示推荐网络路径或推荐网络路径的数目。
图3示出了与图2所述环境200类似的环境300。然而,环境300示出了向处于服务器群集306上的文件服务器请求读/写访问的客户端302和304。服务器群集306包括服务器1、服务器2和服务器3,这些服务器中的每个都包括文件服务器、证明管理组件、以及群集监控组件。在图3所示的实施例中,客户端302和304包括应用、证明管理组件和重定向器。图4示出了示出根据实施例的可在环境300内进行交换的消息的一个示例的顺序图。
下面对图3和4的描述是在将服务器消息块(SMB)协议用作文件访问协议的情况下作出的。然而,实施例不限于此。包括不同版本的SMB或网络文件系统(NFS)的任何文件访问协议都可以在实施例中用作文件访问协议。SMB在说明书中仅仅是为了便于图示。
参考图4,该顺序图示出了根据一个实施例的在客户端302(图3)、网络DNS 400和服务器群集306(图3)之间交换的消息。客户端302首先向网络DNS 400发送请求以解析服务器群集306的IP地址,该服务器群集存储有可以使用一定版本的SMB来访问的文件系统。响应于请求402,网络DNS 400用包括服务器群集306的IP地址的消息404作出响应。
在接收到响应消息404以后,客户端302向服务器群集306发送访问请求消息406。该访问请求可以由客户端302上的重定向器来发送。如图3和4所示,服务器1处理来自客户端302的请求。如图3所示,服务器1包括文件服务器组件,该文件服务器组件与客户端302上的重定向器通信以建立文档访问会话。在实施例中,请求406可以是对SMB会话进行协商的第一请求。例如,该请求可以是SMB2协商分组。如图4所示,服务器1发送访问响应408,该访问响应408建立与客户端302的会话。该响应例如可以是SMB2会话设置响应或SMB 2树连接响应。
应当注意,尽管图4和相关联的描述提供了单个访问请求406和单个访问响应408,但是在实施例中,这可以仅仅是为了建立会话所发送的多个消息中的两个消息。能够理解,为了使用SMB2协议建立会话,可以在客户端302上的重定向器与服务器1上的文件服务器之间交换多个消息。这些消息可以包括下列各项中的一个或多个:SMB2协商消息、SMB2会话设置消息和/或SMB2树连接消息。在会话已经建立以后,客户端302开始通过所建立的信道308(图3)向群集306的服务器1发送访问请求(未示出),例如文件和/或目录读/写。
客户端302上的证明管理组件检测到服务器1是群集306的一部分。在实施例中,该检测可以作为对响应消息408的处理的一部分或者通过其他界外(out of bounds)装置来进行。作为确定服务器1是群集306的一部分的结果,客户端302上的证明管理组件在实施例中被配置为注册群集306所提供的证明服务。结果,客户端302上的证明管理组件使用新信道310(图3)来发送从服务器1请求证明信息的请求410。
在实施例中,该请求根据针对证明服务专门配置的证明协议被格式化。该证明协议可以包含与证明服务相关的多个消息。例如,在实施例中,证明协议至少包含:请求证明信息的证明请求;证明注册消息,该消息用于注册关于群集中的资源的通知;以及证明资源改变消息,该消息用于向客户端通知资源的状态改变(例如资源的在线或离线状态)。这些消息仅仅是一些示例,并且在实施例中,证明服务可以包含其他消息。在一个实施例中,证明协议将远程过程调用(RPC)与作为传输的传输控制协议(TCP)一起使用。
再次参考图4,服务器1的证明管理组件用包含证明信息的响应412来响应请求410。响应412根据证明协议被格式化,并且将包含标识出群集306中的提供证明服务的其他服务器的信息。在实施例中,响应412还包含客户端302为了连接到群集306的其他服务器之一上的证明服务所需的其他信息。在该示例中,响应412中的证明信息包含至少将服务器2标识为提供证明服务的信息。
在一些实施例中,证明信息以特定格式被结构化。例如,证明信息可以被排名。也就是说,提供证明服务的服务器可以以特定顺序被列出。然后,客户端302可以以列表中的第一服务器开始,并且如果该服务器不可用于提供证明服务,则该客户端于是可以尝试该列表中的下一服务器。该排名可以基于考虑到一定参数的多种不同算法,一些非限制性示例包括:已经注册了证明服务的客户端的数目;提供证明服务的服务器;以及特定服务器和网络连接的硬件和软件特性,所述特性可以指示处理较大数量的客户端的能力。
响应于从服务器1接收的证明信息,客户端302将使用信道310(图3)来向服务器2发送注册请求414。注册请求414也根据证明协议被格式化,并且包括标识出客户端302希望接收与之有关通知的资源的信息。在一个实施例中,客户端302可能希望知道服务器1为离线的,使得其具有对服务器1的故障的及早指示。故障的检测将允许及早的恢复,这减少了客户端302上的应用等待操作(读/写)被处理所花的时间量。在该示例中,客户端302向服务器2的证明管理组件注册关于服务器1的在线/离线状态的通知。服务器2发送确认注册请求的状态响应416。在实施例中,响应416将包括客户端302已注册接收与之有关通知的资源的当前状态。
在一些实施例中,在操作416以后,证明服务器(服务器2)可能经历故障,服务器故障417是以虚线示出的。在这种情况下,客户端302将必须重新选择可替代的服务器,包括在一些实施例中发送类似于消息410的另一消息并且(从服务器1或不同服务器)接收类似于消息412的另一消息。客户端302还将发送类似于请求414的证明注册请求以注册来自可替代服务器的证明服务器。
在其他实施例中,客户端可以建立多个证明服务器连接。也就是说,客户端可以向群集306中的一个以上的服务器注册证明服务。所述多个连接将允许客户端即使在所述服务器之一发生故障的情况下仍然能够继续访问证明服务。在实施例中,客户端可以指定所述连接之一作为主要连接,并且仅在主要连接发生故障的情况下次要地使用其他连接。
如果在某个时刻存在服务器1的服务器故障418,则服务器2将检测该故障。如上所述,服务器2可以通过接收在群集306上运行的群集服务器所生成的事件来检测该故障。一旦服务器2检测到服务器故障418,则服务器2将向客户端302发送对该故障的通知420。响应于该故障,客户端302在该实施例中被配置为暂停任何进一步的文件访问请求422。能够理解,如果客户端302发送了任何附加的访问请求,则这些请求将由于服务器1的故障而不被处理。在实施例中,服务器2的证明服务还被配置为将消息424发送给客户端,该消息指示:在服务器3处存储在资源可用于处理来自客户端302的访问请求。在接收到消息424以后,客户端302将继续向服务器3发送文件访问请求426。客户端302上的重定向器通过信道312(图3)将文件访问请求426发送给服务器3的文件服务器组件。
在其他实施例中,客户端302被配置为暂停访问请求,直到服务器1返回在线。服务器2的证明服务将被配置为在服务器1变为可用时向客户端302发送消息424,该消息424指示:服务器1可用于处理来自客户端302的访问请求。
尽管未示出,但是在一些实施例中,当客户端302开始向服务器3发送文件访问请求时,其还将改变从中接收证明服务的服务器。例如,在向服务器3发送文件访问请求以后,客户端302可以开始向服务器3发送针对证明信息的请求这一过程。服务器3可以用与服务器1所发送的响应412类似的信息来响应,该响应包含关于哪些服务器正提供证明服务的信息。该信息可以是不同的,例如可以标识出不同的服务器。之前被标识为提供证明服务的服务器可能后来已经发生故障并且不再可用,或者其他服务器已经变为在线。而且在一些实施例中,证明管理组件被配置为提供具有可用于提供证明服务的服务器的排名的证明信息。因此,服务器3所提供的证明信息可以不同于之前由服务器2提供的证明信息。响应于服务器3发送的证明信息,客户端302可以决定是否向不同服务器请求注册证明服务。
图5和6示出根据各实施例的操作流程500、550、600和650。操作流程500、550、600和650可在任何合适的计算环境中执行。例如,操作流程可以由诸如图1-3所示的系统和环境来执行。因此,操作流程500、550和600的描述可参考图1-3的组件至少之一。然而,对图1-3的组件的任何这类参考都是仅仅出于描述性目的,并且应当理解,图1-3的实施方式是操作流程500、550、600和650的非限制性环境。
此外,尽管以特定次序顺序地示出和描述了操作流程500、550、600和650,但在其它实施例中,能以不同的顺序、多次和/或并行执行各操作。此外,在某些实施例中,一个或多个操作可被省略或组合。
操作流程500和550在图5中被一起示出以表示:操作流程500中的步骤可以具有操作流程550中的相应步骤。操作流程500示出了用于接收针对资源的状态通知的步骤。操作流程550示出了用于提供针对资源的状态通知的步骤。在实施例中,诸如客户端102和104(图1)或客户端202、204(图2)之类的上述客户端可以实现操作流程500。实现操作流程500的客户端可以是任何类型的客户端,包括膝上型计算机、台式计算机、智能电话设备、或平板计算机。在实施例中,诸如图2中所示的节点1、节点2和节点3之类的节点实现操作流程550。这些节点可以是运行群集服务的节点群集的一部分。
流程500始于操作502,在操作502,发送连接到第一节点的请求。第一节点是存储有被访问的信息的节点群集的一部分。在一些实施例中,在操作502发送的请求是请求建立与第一节点的会话以便访问存储在该节点群集上的信息。在操作502以后,流程500转到操作504,在操作504,接收响应,该响应指示已经建立与第一节点的会话。尽管在流程500中未示出,但是在实施例中,在操作504以后,向第一节点发送访问请求以访问存储在第一节点上的信息。
如图5中的实施例中所示,操作流程从操作504转到操作506,在操作506,将针对证明信息的第二请求发送给第一节点。该证明信息标识出:该群集中的什么节点提供可注册的证明服务以提供针对资源的通知。该资源例如可以是网络资源或群集资源。
在步骤508,接收证明信息。然后,可以将该证明信息用于确定该群集中的什么节点提供证明服务。在操作510将证明信息用于发送注册关于资源的通知的注册请求。在一个实施例中,该资源可以是从中访问信息的第一节点。该请求可以是接收关于第一节点或第一节点上的资源的状态的通知。例如,该通知可以指示:第一节点是在线还是离线。
流程500从操作510转到操作512,在操作512,接收关于该资源的通知。然后,流程500在514处结束。在一些实施例中,可能存在响应于在步骤512接收到通知所执行的附加步骤,比如暂停访问请求、重连到群集中的另一节点、以及继续对群集中的其他节点的访问请求。
在实施例中,在操作512接收的通知不是状态通知,而是负载平衡通知。所述负载平衡通知可以指示:未来访问请求应当被发送给不同的服务器。在一些实施例中,该通知可以具体地标识出应当使用的不同网络、网络资源或群集资源。在这些实施例中,将响应于在操作512接收到通知而执行多个操作。
流程550具有与参照流程500所描述的步骤相对应的步骤。如上所述,在实施例中,图2中所示的节点1、节点2和节点3可以实现流程550。流程550始于操作552,在操作502,接收连接到节点群集中的节点的请求。该请求可以是请求建立会话以用于访问存储在该节点群集上的信息。流程从操作552转到操作554,在操作554,发送响应,该响应指示:已经建立会话以允许访问存储在该节点群集中的第一节点上的信息。在一些实施例中,跟随在操作554之后的将是在流程550中未示出的附加步骤。例如,一旦已经如在操作554所发送的响应中所指示的那样建立了会话,则就可以存在多个访问请求被接收以访问在节点群集中的第一节点中所存储的信息。
在操作554以后,在操作556接收针对证明信息的第二请求。该证明信息可以包含标识出:节点群集中的什么节点提供证明服务。流程550转到操作558,在操作558,发送包含证明信息的响应。在实施例中,该证明信息被结构化为使得其不仅包括对节点群集中提供证明服务的节点的指示,而且被排名以指示对一些节点的偏好。
在操作560,接收注册资源的状态通知的请求。在实施例中,该请求是针对网络资源的状态请求的。在其他实施例中,该请求是针对群集资源的状态通知的,比如该群集中的节点是在线还是离线。应当理解,在实施例中,在操作560接收的请求是从不同于发送第一请求(操作552)和第二请求(操作556)的客户端接收的。尽管在流程550期间接收的请求可以于不同客户端来发送,但是操作552-564在实施例中是由单个节点执行的。
在操作560之后,流程转到操作562,在操作562,监控资源。操作562可以包括:监控包括群集资源和网络资源的多个资源。这些资源即使在不存在接收关于资源的通知的当前请求的情况下仍然被监控。操作562可以包括从网络资源或从群集服务接收和处理事件。
在操作562之后,流程转到操作564,在操作564,发送关于该资源的通知。该通知提供关于在操作560接收的注册请求中所指示的资源的状态的信息。在一个实施例中,该通知可以指示:第一节点为离线。在操作564之后,流程在514处结束。在实施例中,流程550可以包括在操作564之后执行的附加步骤。作为一个示例,可以有附加的消息被发送,所述附加的消息指示:之前为离线的资源现在为在线并可用于访问;或者另一资源是可用的。
应当理解,在一些实施例中,操作552-558是在一个位置执行的,并且操作560-564是在不同位置执行的。例如,操作552-558可以在节点群集的与执行560-564的节点不同的节点上执行。在其他实施例中,单个节点可以执行所有操作552-564,然而,操作552-558可以针对第一客户端执行,而操作560-564可以针对第二客户端执行。换言之,节点可以服务于来自第一客户端的访问信息的请求,并且还向第二客户端提供证明服务。
操作流程600示出了用于接收来自群集的群集资源的状态通知的步骤,所述群集向客户端提供分布式文件系统。操作流程650示出了用于接收提供文件系统的群集上的群集资源的状态通知的步骤。在实施例中,诸如客户端102和104(图1)或客户端302、304(图3)之类的上述客户端可以实现操作流程600。在实施例中,服务器群集306的诸如图3所示的服务器1、服务器2和服务器3之类的服务器实现操作流程650。
流程600始于操作602,在操作602,发送连接到服务器群集上的文件系统的请求。该服务器群集包括一个以上服务器并且存储被客户端访问的文件信息。在一些实施例中,在操作602发送的请求是请求建立与该服务器群集中的服务器的会话以便访问存储在该群集上的文件。在实施例中,该会话是利用诸如一定版本的SMB或NFS之类的文件访问协议而建立的。在操作602以后,流程转到操作604,在操作604,接收响应,该响应指示:已经建立与该群集中的服务器的会话。操作602和604可以仅仅是为了对会话进行协商所执行的一系列操作中的两个操作。也就是说,在其他实施例中,可能有多个操作在操作602与604之间执行。
在操作604之后,在操作606向服务器发送访问请求以从存储在服务器群集中的文件系统访问信息。该访问请求例如可以包括读/写请求,所述读/写请求根据诸如一定版本的SMB或一定版本的NFS之类的特定文件访问协议被格式化。
如图6中的实施例中所示,操作流程从操作606转到操作608,在操作608,向该服务器发送针对证明服务信息的第二请求。该证明服务信息尤其是标识出:该群集中的什么服务器提供可注册的证明服务以提供针对群集资源的通知。在操作608发送的请求可以根据与在操作602-606中使用的文件访问协议不同的证明协议被格式化。
在步骤610,接收证明服务信息。然后,可以将该证明服务信息用于确定该群集中的什么服务器提供证明服务。在操作612将证明服务信息用于发送注册关于群集资源的通知的注册请求。在一个实施例中,该资源可以是在操作604与之建立会话并使用在操作606发送的请求从中访问信息的服务器。该注册请求可以指示:该客户端希望接收关于该服务器的状态的通知。
流程600从操作612转到操作614,在操作512,接收关于该资源的通知。在一些实施例中,可能存在响应于在步骤614接收到通知所执行的附加步骤,比如暂停访问请求、重连到群集中的另一服务器、以及继续对群集中的其他服务器的访问请求。在操作614以后,在操作616发送注销的请求。然后,流程600在618处结束。
流程650具有与参照流程600所描述的步骤相对应的步骤。流程650始于操作652,在操作652,发送连接到服务器群集的请求。在实施例中,该请求是请求建立会话以用于访问存储在该服务器群集上的文件信息。该操作发生在服务器群集的文件服务器上。流程从操作652转到操作654,在操作654,发送响应,该响应指示:已经建立会话以允许访问存储在该服务器群集中的文件服务器上的文件。如上所述,操作652和操作654可以仅仅是为了建立会话所执行的的两个操作。在其他实施例中,可以有多个其他操作在操作652与654之间执行以用于建立会话。
跟随在操作656之后的是操作654,在操作654,接收文件访问请求。该文件访问请求可以是请求对存储在该服务器上的文件信息进行读或写。在实施例中,在操作652-656发送和接收的消息根据诸如一定版本的SMB或一定版本的NFS之类的特定文件访问协议被格式化。
在操作656以后,在操作658接收针对证明信息的请求。该请求是针对关于服务器群集中的什么服务器提供证明服务的证明信息的。流程650转到操作660,在操作660,发送响应,该响应包含证明信息,该证明信息具有对服务器群集中提供证明服务的服务器的指示。应当理解,在实施例中,在操作658接收的请求是从不同于发送第一请求(操作652)和第二请求(操作658)的客户端接收的。尽管在流程650期间接收的请求可以于不同客户端来发送,但是操作652-668在实施例中是由单个节点执行的。
在操作662,接收注册群集资源的状态通知的请求。在实施例中,该请求是针对群集资源的状态通知的,比如服务于文件访问请求并且已经与之建立会话的服务器是在线还是离线。在操作662之后,流程转到操作664,在操作562,监控资源。操作664可以包括:利用由在群集上运行的群集服务所提供的API。操作664可以包括:接收和处理从群集服务接收的事件。
在操作664之后,流程转到操作666,在操作564,发送关于该资源的通知。该通知提供关于在操作662接收的注册请求中所指示的资源的状态的信息。在一个实施例中,该通知可以指示:服务器现在为离线。在操作666之后,流程转到操作668,在操作668,接收注销的请求。在操作668接收的请求指示:诸如在操作662接收的注册请求之类的之前注册应当被注销。流程在操作618处结束。
应当注意,在实施例中,操作652-658是在一个服务器上执行的,并且操作660-664是在不同服务器上执行的。例如,操作652-658可以在服务器群集的第一服务器上执行,并且操作660-664可以在服务器群集的第二服务器上执行。在其他实施例中,单个服务器可以执行所有操作652-664,然而,操作652-658可以针对第一客户端执行,并且操作660-664可以针对第二客户端执行。换言之,服务器可以服务于来自第一客户端的访问信息的请求,并且还向第二客户端提供证明服务。
图7示出可用于实现本文所描述的各实施例的通用计算机系统700。计算机系统700仅是计算环境的一个示例,而非旨在对计算机和网络架构的使用范围或功能提出任何限制。计算机系统700也不应被解释成对于在示例计算机系统700中所示出的任一组件或其组合有任何依赖或要求。在实施例中,系统700可用作上面参照图1所述的客户端和/或服务器。
在其最基本配置中,系统700通常包括至少一个处理单元702和存储器704。取决于计算设备的确切配置和类型,存储器704可以是易失性(如RAM)、非易失性(如ROM、闪存等)或是两者的某种组合。该最基本配置在图7中由虚线706来示出。系统存储器704存储在系统700上执行的应用程序。例如,存储器704可以存储关于所监控的资源的信息720。存储器704还可以包括针对通知的客户端注册722。
本文所使用的术语计算机可读介质可包括计算机存储介质。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块、或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器704、可移动存储和不可移动存储708都是计算机存储介质示例(即,存储器存储)。计算机存储介质可包括,但不限于,RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或者可用于存储信息且可由计算设备700访问的任何其他介质。任何此类计算机存储介质可以是设备700的一部分。计算设备700还可以具有输入设备714,如键盘、鼠标、笔、声音输入设备、触摸输入设备等。还可包括诸如显示器、扬声器、打印机等输出设备716。上述设备是示例,并且可使用其他设备。
本文所使用的术语计算机可读介质还可包括通信介质。通信媒介可由诸如载波或其他传输机制的已调制数据信号中的计算机可读指令、数据结构、程序模块、或其他数据来体现,并且包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。
本说明书通篇引述了“一个实施例”或“实施例”,这意味着在至少一个实施例中包括特定描述的特征、结构或特性。因此,对这样短语的使用可指的是一个以上的实施例。而且,在一个或多个实施例中,可以用任何合适的方式组合所描述的特征、结构或特性。
然而,本领域技术人员会认识到本实施例也可在没有一个或多个具体细节的情况下实施,或者采用其它方法、资源、材料等来实现。在其他情况中,仅为了避免模糊实施例的各方面,未详细示出和描述公知的结构、资源或操作。
虽然示出和描述了示例实施例和应用,但是应该理解本实施例不限于上述精确配置和资源。可以对此处公开的方法和系统的排列、操作以及细节作出对本领域技术人员显而易见的各种修改、改变和变化,而不背离所要求保护的本实施例的范围。

Claims (10)

1.一种用于向客户端提供状态通知的计算机实现的方法(550),该方法包括:
在第一节点处接收(552)连接到第一节点以访问第一节点上的信息的请求,其中第一节点是群集中的多个节点之一;
从第一节点发送(554)响应,所述响应建立用于访问第一节点上的信息的会话;
接收(556)针对关于所述多个节点的节点信息的第二请求;
响应于第二请求,发送(558)具有所述节点信息的第二响应,其中所述节点信息标识出所述多个节点中的充当用于监控资源的证明节点的至少一个节点并且进一步标识出所述至少一个节点的排名;
在第一节点处接收(560)注册关于至少一个资源的通知的注册请求,其中第一节点充当第一证明节点并且监控至少一个资源;以及
从第一节点发送(564)具有所述至少一个资源的状态的通知。
2.如权利要求1所述的方法(550),其特征在于,所述通知指示所述至少一个资源的故障。
3.如权利要求1所述的方法(550),其特征在于,连接到第一节点的请求和建立用于访问第一节点上的信息的会话的响应是根据文件访问协议被格式化的。
4.如权利要求3所述的方法(550),其特征在于,针对节点信息的第二请求、具有所述节点信息的第二响应、所述注册请求、以及所述通知是根据与所述文件访问协议不同的证明协议被格式化的。
5.一种用于接收状态通知的方法(500),该方法包括:
发送(502)连接到第一文件服务器的请求,其中第一文件服务器是群集中的多个文件服务器之一;
从第一文件服务器接收(504)响应,所述响应指示用于访问存储在第一文件服务器上的文件信息的会话的建立;
发送(606)访问第一文件服务器上的文件的第一多个请求;
向第一文件服务器传送(506)针对证明信息的第二请求,其中所述证明信息提供所述群集中的所述多个文件服务器的第二文件服务器的标识信息,其中第二文件服务器提供监控至少一个资源的证明服务;
接收(508)具有所述证明信息的消息,其中所述证明信息包括提供所述证明服务的至少一个附加文件服务器并且进一步标识所述至少一个附加文件服务器的排名;
基于所述证明信息,向所述至少一个附加文件服务器中的至少一者传送(510)注册具有所述至少一个资源的状态的通知的请求;以及
接收(512)具有所述至少一个资源的状态的通知。
6.如权利要求5所述的方法,其特征在于,还包括响应于所述通知:
暂停(422)对第一文件服务器的任何附加的文件访问请求;
接收(424)指示所述群集中的所述多个服务器中的第三文件服务器的可用性的消息;以及
向第三文件服务器发送(426)访问第二多个文件访问请求。
7.如权利要求5所述的方法,其特征在于,连接到第一文件服务器的第一请求、来自第一文件服务器的指示会话的建立的响应、以及所述第一多个访问文件的请求是通过第一通信信道(308)传送的。
8.一种用于提供客户端通信服务的计算机系统(100),该系统包括:
群集(106)中的多个服务器(106A,106B,106C),其中所述多个服务器中的至少一部分被配置为:
建立用于提供对存储在所述服务器上的文件信息的访问的会话;
存储标识出所述多个服务器中的提供证明服务的至少一个其他服务器的证明信息;
提供所述多个服务器中的、提供所述证明服务的各服务器的列表;
监控关于至少一个资源的事件;
接收注册关于所述至少一个资源的通知的注册请求;以及
发送具有所述至少一个资源的状态的通知。
9.如权利要求8所述的系统,其中所述资源(206)是群集资源并且第一服务器从运行在所述群集(206)上的群集服务(206)接收事件。
10.如权利要求9所述的系统,其特征在于,所述通知指示所述至少一个资源(206)的故障。
CN201210086941.2A 2011-03-29 2012-03-28 提供证明服务 Active CN102739411B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710656926.XA CN107204901B (zh) 2011-03-29 2012-03-28 一种提供、接收状态通知的计算机系统

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/074,920 US8521860B2 (en) 2011-03-29 2011-03-29 Providing a witness service
US13/074,920 2011-03-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710656926.XA Division CN107204901B (zh) 2011-03-29 2012-03-28 一种提供、接收状态通知的计算机系统

Publications (2)

Publication Number Publication Date
CN102739411A CN102739411A (zh) 2012-10-17
CN102739411B true CN102739411B (zh) 2017-08-29

Family

ID=46928782

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710656926.XA Active CN107204901B (zh) 2011-03-29 2012-03-28 一种提供、接收状态通知的计算机系统
CN201210086941.2A Active CN102739411B (zh) 2011-03-29 2012-03-28 提供证明服务

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710656926.XA Active CN107204901B (zh) 2011-03-29 2012-03-28 一种提供、接收状态通知的计算机系统

Country Status (12)

Country Link
US (3) US8521860B2 (zh)
EP (1) EP2692088B1 (zh)
JP (1) JP5863942B2 (zh)
KR (1) KR101891365B1 (zh)
CN (2) CN107204901B (zh)
AU (1) AU2012238145B2 (zh)
BR (1) BR112013025020A2 (zh)
CA (1) CA2831385A1 (zh)
MX (1) MX2013011250A (zh)
RU (1) RU2601863C2 (zh)
TW (1) TW201242315A (zh)
WO (1) WO2012134729A2 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8521860B2 (en) 2011-03-29 2013-08-27 Microsoft Corporation Providing a witness service
US8650308B2 (en) * 2011-09-30 2014-02-11 General Electric Company Methods and apparatus for client-side context managers
US8914485B2 (en) 2011-09-30 2014-12-16 General Electric Company Methods and apparatus for in-process client-side context managers
EP2789138B1 (en) * 2011-12-06 2016-09-14 Seven Networks, LLC A mobile device and method to utilize the failover mechanisms for fault tolerance provided for mobile traffic management and network/device resource conservation
US9766992B2 (en) 2013-10-31 2017-09-19 Sandisk Technologies Llc Storage device failover
US10110536B2 (en) * 2014-04-21 2018-10-23 Dropbox, Inc. System for managing event notifications to client devices
EP3051780A1 (en) * 2015-01-30 2016-08-03 Gemalto Sa A method for changing by a first application a contactless activation state of a second application
KR20180027564A (ko) * 2015-07-08 2018-03-14 콘비다 와이어리스, 엘엘씨 서비스 레이어 애니캐스트 및 썸캐스트
US10659366B1 (en) * 2015-11-04 2020-05-19 Amazon Technologies, Inc. Load balancer metadata forwarding on secure connections
US10148503B1 (en) * 2015-12-29 2018-12-04 EMC IP Holding Company LLC Mechanism for dynamic delivery of network configuration states to protocol heads
US10542077B1 (en) * 2016-05-19 2020-01-21 Equinix, Inc. Event-driven notification and network service bus for a cloud exchange
CN106357744A (zh) * 2016-08-29 2017-01-25 浪潮(北京)电子信息产业有限公司 Smb客户端重连集群的方法、系统及smb客户端
CN106790420B (zh) * 2016-11-30 2019-11-26 华为技术有限公司 一种多会话通道建立方法和系统
US10997132B2 (en) * 2017-02-07 2021-05-04 Oracle International Corporation Systems and methods for live data migration with automatic redirection
US10791047B2 (en) * 2018-02-19 2020-09-29 Disney Enterprise Inc. Automated network navigation
US10721335B2 (en) * 2018-08-01 2020-07-21 Hewlett Packard Enterprise Development Lp Remote procedure call using quorum state store
US11153391B2 (en) * 2020-01-31 2021-10-19 Hewlett Packard Enterprise Development Lp Connecting application instances to client devices
US11902083B1 (en) * 2021-08-05 2024-02-13 Cisco Technology, Inc. Techniques to provide a flexible witness in a distributed system
KR102427456B1 (ko) * 2021-10-27 2022-08-01 주식회사 파이오링크 서버 상태 트래킹 정보를 참조로 하여 특정 사용자에게 서비스를 제공하는 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7913105B1 (en) * 2006-09-29 2011-03-22 Symantec Operating Corporation High availability cluster with notification of resource state changes

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001036552A (ja) * 1999-07-22 2001-02-09 Oki Electric Ind Co Ltd クライアントサーバシステム監視装置および方法
US6654360B1 (en) * 2000-01-10 2003-11-25 Qualcomm Incorporated Method and system for providing dormant mode wireless packet data services
US7506034B2 (en) 2000-03-03 2009-03-17 Intel Corporation Methods and apparatus for off loading content servers through direct file transfer from a storage center to an end-user
US7305450B2 (en) 2001-03-29 2007-12-04 Nokia Corporation Method and apparatus for clustered SSL accelerator
JP2003050752A (ja) 2001-08-06 2003-02-21 Fujitsu Ltd サーバ障害復旧通知方法及び装置
JP2003337717A (ja) * 2002-05-22 2003-11-28 Nec Corp オンライントランザクション処理の障害時復旧同期システム
US8495131B2 (en) * 2002-10-08 2013-07-23 International Business Machines Corporation Method, system, and program for managing locks enabling access to a shared resource
JP2004295656A (ja) * 2003-03-27 2004-10-21 Ntt Docomo Inc 通信システム、クライアント装置及びクライアント装置によるサーバ装置の負荷分散方法
US7251745B2 (en) 2003-06-11 2007-07-31 Availigent, Inc. Transparent TCP connection failover
US7747717B2 (en) 2003-08-14 2010-06-29 Oracle International Corporation Fast application notification in a clustered computing system
US7725572B1 (en) 2003-12-30 2010-05-25 Sap Ag Notification architecture and method employed within a clustered node configuration
US7383463B2 (en) 2004-02-04 2008-06-03 Emc Corporation Internet protocol based disaster recovery of a server
US7423973B2 (en) * 2004-05-18 2008-09-09 Qualcomm Incorporated Methods and apparatus for hybrid multicast and unicast transmissions in a data network
US7444538B2 (en) 2004-09-21 2008-10-28 International Business Machines Corporation Fail-over cluster with load-balancing capability
US7668962B2 (en) 2005-02-07 2010-02-23 Symantec Operating Corporation System and method for connection failover using redirection
US7962915B2 (en) 2005-03-18 2011-06-14 International Business Machines Corporation System and method for preserving state for a cluster of data servers in the presence of load-balancing, failover, and fail-back events
JP2006285377A (ja) 2005-03-31 2006-10-19 Fujitsu Ltd 故障監視プログラム及び負荷分散装置
JP2007058506A (ja) * 2005-08-24 2007-03-08 Ricoh Co Ltd 文書管理サーバ、文書管理システム、及び、文書管理プログラムとその記録媒体
US7627584B2 (en) 2005-11-30 2009-12-01 Oracle International Corporation Database system configured for automatic failover with no data loss
US7664125B1 (en) * 2006-01-03 2010-02-16 Emc Corporation Indication forwarding in a distributed environment
CN101690136A (zh) 2007-06-26 2010-03-31 汤姆逊许可证公司 实时协议流迁移
CN106131178A (zh) * 2008-12-05 2016-11-16 社会传播公司 实时内核
CN101605092A (zh) * 2009-07-10 2009-12-16 浪潮电子信息产业股份有限公司 一种基于内容的负载均衡系统
US8521860B2 (en) 2011-03-29 2013-08-27 Microsoft Corporation Providing a witness service

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7913105B1 (en) * 2006-09-29 2011-03-22 Symantec Operating Corporation High availability cluster with notification of resource state changes

Also Published As

Publication number Publication date
WO2012134729A2 (en) 2012-10-04
US20120254396A1 (en) 2012-10-04
BR112013025020A2 (pt) 2017-01-10
CN107204901B (zh) 2020-07-21
AU2012238145A1 (en) 2013-09-12
AU2012238145B2 (en) 2016-02-18
US9306825B2 (en) 2016-04-05
KR101891365B1 (ko) 2018-08-23
EP2692088A2 (en) 2014-02-05
CN102739411A (zh) 2012-10-17
JP2014515851A (ja) 2014-07-03
US20150106516A1 (en) 2015-04-16
US8521860B2 (en) 2013-08-27
RU2013143788A (ru) 2015-04-10
CA2831385A1 (en) 2012-10-04
TW201242315A (en) 2012-10-16
MX2013011250A (es) 2013-10-17
JP5863942B2 (ja) 2016-02-17
EP2692088A4 (en) 2014-10-22
US8949402B2 (en) 2015-02-03
KR20140016309A (ko) 2014-02-07
CN107204901A (zh) 2017-09-26
RU2601863C2 (ru) 2016-11-10
US20130304821A1 (en) 2013-11-14
EP2692088B1 (en) 2021-05-05
WO2012134729A3 (en) 2012-12-13

Similar Documents

Publication Publication Date Title
CN102739411B (zh) 提供证明服务
US11070456B2 (en) Methods to monitor resources through HTTP/2
US8756311B2 (en) Shared heartbeat service for managed devices
US9379997B1 (en) Service request management
JP4616159B2 (ja) クラスタシステム、ロードバランサ、ノード振替方法およびノード振替プログラム
WO2016127884A1 (zh) 消息推送方法及装置
US20090290503A1 (en) Controlling Access to a Destination in a Data Processing Network
EP1627500B1 (en) Service management using multiple service location managers
CN109525620B (zh) 一种消息推送系统、方法及装置
CN105188087B (zh) 一种基于短信网关的业务通信方法和系统
WO2014015525A1 (zh) 一种用户在线状态的查询方法和装置
JP5353714B2 (ja) サーバシステムとそのイベントメッセージ送信方法
WO2013159492A1 (zh) 信息上报与下载的方法及系统
US20090228595A1 (en) Policy negotiation system and method
CN113542324A (zh) 一种消息推送方法和装置
CN116582590A (zh) 数据传输方法及装置
CN111490997B (zh) 任务处理方法、代理系统、服务系统和电子设备
CN114095759B (zh) 一种流媒体重定向方法及相关装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1177061

Country of ref document: HK

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150729

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150729

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1177061

Country of ref document: HK