1.本公开总体上涉及一种具有多个服务器的服务器系统,该多个服务器通过数据网络与用户设备通信以在其上执行(多个)应用;并且更具体地,涉及一种服务器系统,该服务器系统被配置为管理其中的每个服务器上的业务和平衡负载。
背景技术:2.包括通过数据网络连接的多个用户设备的计算系统通常配备有多个服务器,该多个服务器交互以完成个体计算系统的一个或多个指定任务。这样的计算系统内的每个服务器通常配备有很多资源,服务器利用这些资源来执行其功能。在操作中,随着计算系统上的负载增加,这些资源中的一个或多个可能成为瓶颈,最终导致连接质量下降、服务器崩溃和/或系统故障。
3.传统上,通常通过在上述问题时增加更多资源来解决该问题。例如,当遇到性能下降时,会向服务器添加更多存储器、更快的中央处理单元(cpu)、多个cpu或更多磁盘驱动器,以试图防止系统过载或崩溃。这样的解决方案通常是昂贵的、处理密集的和耗时的。此外,其他几种解决方案包括使用诸如dsl和电缆调制解调器等技术进行高速交换和路由。然而,即使这样的技术通常也无法为用户提供优质服务并且无法降低服务器崩溃的可能性,从而给用户带来不愉快的体验。
4.另一问题是大量用户正在访问同一软件(诸如特定游戏)的情况。如果服务器系统出现故障,则存在所有用户受到服务中断造成的负面影响的风险。
5.因此,鉴于前述讨论,需要克服与用于管理资源和业务的传统计算系统相关的上述限制。
技术实现要素:6.本公开旨在提供一种服务器系统。本公开还试图提供一种用于管理服务器系统的方法。本公开旨在提供一种解决方案,以解决在由多个用户使用用户设备来使用时系统上的负载不平衡和不可靠性的现有问题。本公开的目的是提供一种解决方案,该解决方案至少部分克服了现有技术中遇到的问题,并且提供了网络中服务器的确定性管理。此外,本公开在高负载需求的情况下增强了服务器系统的可靠性,并且消除了不确定的性能问题,诸如由于重负载导致的系统崩溃,减少了延迟和容量问题。
7.在第一方面,本公开的实施例提供了一种服务器系统,该服务器系统包括:
[0008]-被配置为执行第一角色的第一服务器;
[0009]-被配置为执行至少一个其他角色的至少一个其他服务器;
[0010]-至少一个备用服务器;以及
[0011]-管理层服务器,其中管理层服务器被配置为:
[0012]-分配第一组用户设备以访问第一服务器并且分配至少一个其他组用户设备以访问至少一个其他服务器;
[0013]-接收由第一服务器发送的状态信息和由至少一个其他服务器发送的状态信息;
[0014]-分析状态信息以确定第一服务器的操作状态和至少一个其他服务器的操作状态;
[0015]-当第一服务器的操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为第一角色,并且将第一组用户设备重新分配给至少一个备用服务器中的第一备用服务器;以及
[0016]-当至少一个其他服务器的操作状态指示故障状态时,将至少一个备用服务器中的另一备用服务器的角色更新为至少一个其他角色,并且将至少一个其他组用户设备重新分配给至少一个其他备用服务器。
[0017]
第二方面,本公开的实施例提供了一种用于管理服务器系统的方法,该方法包括:
[0018]-在第一服务器中执行第一角色;
[0019]-在至少一个其他服务器中执行至少一个其他角色;
[0020]-分配第一组用户设备以访问第一服务器并且分配至少一个其他组用户设备以访问至少一个其他服务器;
[0021]-从第一服务器接收状态信息并且从至少一个其他服务器接收状态信息;
[0022]-通过分析状态信息来确定第一服务器的操作状态和至少一个其他服务器的操作状态;
[0023]-当第一服务器的操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为第一角色,并且将第一组用户设备重新分配给至少一个备用服务器中的第一备用服务器;以及
[0024]-当至少一个其他服务器的操作状态指示故障状态时,将至少一个备用服务器中的另一备用服务器的角色更新为至少一个其他角色,并且将至少一个其他组用户设备重新分配给至少一个其他备用服务器。
[0025]
在第三方面,本公开的实施例提供一种管理服务器系统的方法,该服务器系统包括用于根据第一角色执行第一软件的第一服务器、用于根据第二角色执行至少一个其他软件的至少一个其他服务器、具有第三角色的至少一个备用服务器、和管理层服务器,该方法包括:
[0026]-向管理层服务器提供角色列表;
[0027]-分配第一组用户设备以访问在第一服务器中运行的可执行的第一软件,并且分配至少一个其他组用户设备以访问在至少一个其他服务器中运行的可执行的至少一个其他软件;
[0028]-由第一服务器和至少一个其他服务器向管理层服务器发送状态信息;
[0029]-管理层服务器接收状态信息并且分析所接收的状态信息,以确定第一服务器的第一操作状态和至少一个其他服务器的第二操作状态;
[0030]-如果第一操作状态指示第一服务器发生故障,则由管理层服务器将第一角色作为空闲角色进行通告,或者如果第二操作状态指示至少一个其他服务器发生故障,则由管理层服务器将第二角色作为空闲角色进行通告;
[0031]-将至少一个备用服务器的第三角色更新为所通告的空闲角色;
[0032]-根据更新后的第三角色在至少一个备用服务器中执行第三软件;以及
[0033]-重新分配被分配给发生故障的所述服务器的一组用户设备以访问运行至少一个备用服务器的可执行的第三软件。
[0034]
本公开的实施例基本上消除或至少部分解决了现有技术中的上述问题,并且提供了一种可靠、快速和稳健的服务系统,该系统减少了延迟和服务器崩溃的可能性,从而为使用用户设备的用户提供了无缝和不间断的体验。
[0035]
本公开的其他方面、优点、特征和目的将从附图和结合所附权利要求解释的说明性实施例的详细描述中变得明显。
[0036]
应当理解,本公开的特征易于以各种组合进行组合,而没有脱离由所附权利要求限定的本公开的范围。
附图说明
[0037]
当结合附图阅读时,以上概述以及说明性实施例的以下详细描述将得到更好的理解。为了说明本公开,在附图中示出了本公开的示例性构造。然而,本公开不限于本文中公开的特定方法和工具。此外,本领域技术人员将理解,附图不是按比例绘制的。在可能的情况下,相同的元素已经用相同的数字表示。
[0038]
现在将仅通过示例的方式参考以下图表来描述本公开的实施例,在附图中:
[0039]
图1是根据本公开的实施例的示例性服务器系统的框图;
[0040]
图2a和图2b是根据本公开的各种实施例的示例性网络环境的框图;
[0041]
图3是描绘根据本公开的实施例的在服务器系统中采用的用于将用户设备的用户从一个服务器重新路由到另一服务器的功能元件的框图;
[0042]
图4是描绘根据本公开的实施例的与交换机通信的管理层服务器的架构的框图;以及
[0043]
图5a-图5b提供了描绘根据本公开的实施例的用于管理服务器系统的方法的步骤的流程图。
[0044]
在附图中,使用带下划线的数字来表示带下划线的数字所位于的项目或与带下划线的数字相邻的项目。不带下划线的数字与由线标识的项目相关,该线将不带下划线的数字连接到该项目。当一个数字不带下划线并且伴随有相关箭头时,这个不带下划线的数字用于标识箭头所指的一般项目。
具体实施方式
[0045]
以下详细描述说明了本公开的实施例以及可以实现它们的方式。尽管已经公开了执行本公开的一些模式,但是本领域技术人员将认识到,用于执行或实践本公开的其他实施例也是可能的。
[0046]
在第一方面,本公开的实施例提供了一种服务器系统,该服务器系统包括:
[0047]-被配置为执行第一角色的第一服务器;
[0048]-被配置为执行至少一个其他角色的至少一个其他服务器;
[0049]-至少一个备用服务器;以及
[0050]-管理层服务器,其中管理层服务器被配置为:
[0051]-分配第一组用户设备以访问第一服务器并且分配至少一个其他组用户设备以访
问至少一个其他服务器;
[0052]-接收由第一服务器发送的状态信息和由至少一个其他服务器发送的状态信息;
[0053]-分析状态信息以确定第一服务器的操作状态和至少一个其他服务器的操作状态;
[0054]-当第一服务器的操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为第一角色,并且将第一组用户设备重新分配给至少一个备用服务器中的第一备用服务器;以及
[0055]-当至少一个其他服务器的操作状态指示故障状态时,将至少一个备用服务器中的另一备用服务器的角色更新为至少一个其他角色,并且将至少一个其他组用户设备重新分配给至少一个其他备用服务器。
[0056]
第二方面,本公开的实施例提供了一种用于管理服务器系统的方法,该方法包括:
[0057]-在第一服务器中执行第一角色;
[0058]-在至少一个其他服务器中执行至少一个其他角色;
[0059]-分配第一组用户设备以访问第一服务器并且分配至少一个其他组用户设备以访问至少一个其他服务器;
[0060]-从第一服务器接收状态信息并且从至少一个其他服务器接收状态信息;
[0061]-通过分析状态信息来确定第一服务器的操作状态和至少一个其他服务器的操作状态;
[0062]-当第一服务器的操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为第一角色,并且将第一组用户设备重新分配给至少一个备用服务器中的第一备用服务器;以及
[0063]-当至少一个其他服务器的操作状态指示故障状态时,将至少一个备用服务器中的另一备用服务器的角色更新为至少一个其他角色,并且将至少一个其他组用户设备重新分配给至少一个其他备用服务器。
[0064]
在第三方面,本公开的实施例提供一种管理服务器系统的方法,该服务器系统包括用于根据第一角色执行第一软件的第一服务器、用于根据第二角色执行至少一个其他软件的至少一个其他服务器、具有第三角色的至少一个备用服务器、和管理层服务器,该方法包括:
[0065]-向管理层服务器提供角色列表;
[0066]-分配第一组用户设备以访问在第一服务器中运行的可执行的第一软件,并且分配至少一个其他组用户设备以访问在至少一个其他服务器中运行的可执行的至少一个其他软件;
[0067]-由第一服务器和至少一个其他服务器向管理层服务器发送状态信息;
[0068]-管理层服务器接收状态信息并且分析所接收的状态信息,以确定第一服务器的第一操作状态和至少一个其他服务器的第二操作状态;
[0069]-如果第一操作状态指示第一服务器发生故障,则由管理层服务器将第一角色作为空闲角色进行通告,或者如果第二操作状态指示至少一个其他服务器发生故障,则由管理层服务器将第二角色作为空闲角色进行通告;
[0070]-将至少一个备用服务器的第三角色更新为所通告的空闲角色;
[0071]-根据更新后的第三角色在至少一个备用服务器中执行第三软件;以及
[0072]-重新分配被分配给发生故障的所述服务器的一组用户设备以访问运行至少一个备用服务器的可执行的第三软件。
[0073]
本公开提供了一种用于管理网络中的服务器的服务器系统,其中涉及例如在发生故障时将业务从一个服务器重新路由到另一服务器。本服务器系统可以用于各种应用,包括需要更高处理速度、更高可靠性和更高稳健性的在线游戏应用。可以结合本公开的原理的其他任务和应用包括但不限于数据库管理系统、应用服务提供商、公司数据中心、建模和模拟系统、图形渲染系统、复杂计算分析系统等。尽管本公开的原理可以针对特定应用来描述,但是应当认识到,很多其他任务或应用可以利用本服务器系统来执行,而没有任何限制。
[0074]
由本服务器系统和方法提供的很多优点中的一个是在广泛的负载范围内提高了指定角色的性能。此外,即使在高负载需求的情况下,本服务器系统也增强了服务器的可靠性。本公开旨在减少不确定的性能特征,诸如由于重负载而导致的计算系统的崩溃(这是传统系统所常见的)。本服务器系统还用于消除延迟、负载容量问题等。本服务器系统还旨在高效利用硬件资源以获取更好的性能。特别地,当用于游戏应用时,服务器系统允许来自不同地理位置的用户体验不间断、快速和连续的服务和性能。
[0075]
为了本公开的目的,现在将考虑示例性网络环境,其中服务器系统包括经由通信网络彼此连接的第一服务器、至少一个其他服务器、至少一个备用服务器和管理层服务器。在整个本公开中,术语“通信网络”涉及互连的可编程和/或非可编程组件的布置,该组件被配置为促进一个或多个电子设备和/或数据库之间的数据通信,无论是在申请时可用或已知还是在以后开发。此外,通信网络可以包括但不限于一个或多个对等网络、混合对等网络等。本文中,通信网络可以是个体网络的集合,该网络彼此互连并且作为单个大型网络运行。这样的个体网络可以是有线的、无线的或其组合。这样的个体网络的示例包括但不限于局域网(lan)、广域网(wan)、城域网(man)、无线lan(wlan)、无线wan(wwan)、无线man(wman)、互联网、第二代(2g)电信网络、第三代(3g)电信网络、第四代(4g)电信网络和全球微波接入互操作性(wimax)网络。
[0076]
应当理解,网络环境可以根据各种可能的场景以各种方式实现。在一个示例场景中,网络环境可以通过诸如第一服务器、至少一个其他服务器、至少一个备用服务器和管理层服务器等服务器系统的组件的空间并置布置来实现。在另一示例场景中,网络环境可以通过经由通信网络彼此通信耦合的第一服务器、至少一个其他服务器、至少一个备用服务器和管理层服务器的空间分布式布置来实现。在又一示例场景中,第一服务器、至少一个其他服务器、至少一个备用服务器和管理层服务器可以经由云服务器来实现。
[0077]
在整个本公开中,如在“第一服务器”、“至少一个其他服务器”、“至少一个备用服务器”和“管理层服务器”中使用的术语“服务器”是指被配置为改善组织中的网络安全的至少一个服务器的布置。术语“服务器”通常是指具有客户端服务器关系的应用、程序、过程或设备,其响应于通信网络上的另一应用、程序、过程或设备(客户端)对信息或服务的请求。术语“服务器”还涵盖使提供信息或提供服务的行为成为可能的软件。此外,术语“客户端”通常是指具有客户端服务器关系的应用、程序、过程或设备,其向通信网络上的另一应用、程序、过程或设备(服务器)请求信息或服务。重要的是,术语“客户端”和“服务器”是相对
的,因为应用可以是一个应用的客户端,但可以是另一应用的服务器。术语“客户端”还涵盖使请求应用、程序、过程或设备与服务器之间的连接成为可能的软件,诸如ftp客户端。本文中,客户端可以是与第一组用户设备和至少一个其他组用户设备相关联的多个用户设备,这些用户设备经由通信网络通信地耦合到服务器布置。用户设备的示例包括但不限于移动电话、智能电话、移动互联网设备(mid)、平板电脑、超移动个人电脑(umpc)、平板电脑、个人数字助理(pda)、连网板、个人计算机(pc)、手持式pc、膝上型计算机和台式计算机。
[0078]
本服务器系统可以作为服务的一部分而部署给第三方,例如组织,其中第三方虚拟专用网(vpn)服务被提供作为安全部署工具,或者其中vpn根据特定部署的需要按需构建。vpn是可以用于通过其他不安全或不可信网络来保护连接的任何技术组合。vpn可以提高安全性并且降低运营成本。vpn利用公共网络(通常是互联网)将远程站点或用户设备的用户连接在一起。vpn不使用专用的、真实世界连接(诸如租用线路),而是使用通过互联网从公司的专用网络路由到远程站点的“虚拟”连接。经由vpn对软件的访问可以通过专门构建vpn来提供作为服务,以用于递送或执行过程软件的目的(即,软件驻留在其他地方),其中vpn的生命周期基于支付金额而限于给定时间段或给定部署次数。在其他示例中,本解决方案作为服务也可以部署并且集成到组织的it基础设施中。
[0079]
具体地,第一服务器被配置为执行第一角色,并且至少一个其他服务器被配置为执行至少一个其他角色。在整个本公开中,在“第一角色”和“至少一个其他角色”中使用的术语“角色”是指由服务器执行以执行软件应用(诸如游戏应用)的功能。应当理解,游戏应用可以包括需要以同步方式处理和执行以实现提供给最终用户(诸如使用第一组用户设备的第一组用户和使用其他组用户设备的其他组用户)的游戏应用的结果的多个功能和/或过程。角色可以是与执行游戏应用或任何其他应用相关联的专用任务或子任务,该任务或子任务由第一服务器和至少一个其他服务器中的每个执行。不同角色的示例包括但不限于网络接口、存储处理、图形处理、命令处理、应用处理、系统管理处理、协议处理、静态内容(诸如网页、mp3文件、http对象文件、音频流文件、视频流文件等)的递送、以及需要迭代处理的诸如指令和命令等动态内容的递送。在一个示例中,服务器系统可以包括多个服务器,包括第一服务器和至少一个其他服务器。本文中,多个服务器中的每个被配置为根据服务器系统的需要执行不同角色。
[0080]
可选地,第一服务器根据第一角色运行第一可执行软件,并且至少一个其他服务器根据至少一个其他角色运行至少一个其他可执行软件。在整个本公开中,如“第一可执行软件”和“至少一个其他可执行软件”中使用的术语“可执行软件”是指由第一服务器和/或至少一个其他服务器可执行以将第一服务器和/或至少一个其他服务器配置为执行诸如第一角色和至少一个其他角色等任务的指令集合或指令集。此外,可执行软件可以存储在诸如ram、硬盘、光盘等存储介质中,并且还旨在涵盖所谓的“固件”,即,存储在rom等上的软件。可选地,术语“可执行软件”是指软件应用。这样的可执行软件以各种方式组织,例如,可执行软件包括被组织为库的组件、存储在远程服务器等上的基于互联网的程序、源代码、解释代码、目标代码、直接可执行代码等。可以理解,软件可以调用系统级代码或调用驻留在服务器或其他位置上的其他软件来执行某些功能。此外,可执行软件可以预先配置并且与操作系统预先集成,从而构建软件设备。在一个示例中,可执行软件可以是在线游戏软件。可选地,第一可执行软件和至少一个其他可执行软件相同。在这种情况下,相同软件在第一
服务器和至少一个其他服务器中执行,使得第一服务器和至少一个其他服务器执行相同角色。可选地,第一可执行软件和至少一个其他可执行软件不同。在这种情况下,不同软件在第一服务器和至少一个其他服务器中执行,使得第一服务器和至少一个其他服务器执行不同角色。在下文中,为了简单明了,“第一服务器”和“至少一个其他服务器”有时可互换地称为“主服务器”。
[0081]
值得注意的是,至少一个备用服务器被配置为接管已经经历故障或中断的任何主服务器。特别地,至少一个备用服务器被配置为提供足够的带宽以允许在主服务器发生故障的情况下从任何主服务器到其的业务的重新路由。应当理解,至少一个备用服务器被配置为运行与任何故障主服务器中的可执行软件相同的可执行软件,从而提供服务器对多个用户设备的不间断访问。
[0082]
可选地,第一服务器、至少一个其他服务器和至少一个备用服务器在整个通信网络上分布式互连,以在整个网络上的个体组件(诸如服务器、路由器、交换机、管理层)之间创建虚拟分布式互连背板,例如,这些组件可以被配置为以如本文所述的确定性方式一起操作。在一个示例中,服务器系统可以与诸如波分复用(“wdm”)或密集波分复用(“dwdm”)等技术以及光互连技术(例如,结合基于光/光接口的系统)、无限带宽(infiniband)、闪电输入/输出(lightning i/o)或其他技术相结合使用。有利地,例如,本配置可以用于允许单独的服务器在物理上彼此远离和/或由彼此不同或具有外部关系的两个或更多个实体(例如,两个或更多个不同服务提供者)操作。在本示例中,一个或多个处理功能可以物理上远离一个或多个其他处理功能(例如,位于单独的机箱中、位于单独的建筑物中、位于单独的城市/国家等)。然而,在备选实施例中,如果需要,若干组件可以位于公共本地设施中。
[0083]
此外,管理层服务器被配置为管理一个或多个主服务器的业务,并且还被配置为在一个或多个主服务器发生故障的情况下通过访问与第一服务器和至少一个其他服务器的操作状态相关的信息来将业务重新路由到至少一个备用服务器。应当理解,管理层服务器被配置为优化带宽利用并且允许业务管理的密度确定,以增强系统的可靠性。值得注意的是,管理层服务器与第一服务器、至少一个其他服务器和至少一个备用服务器中的每个通信耦合,以便持续监测每个主服务器的操作状态以确定任何主服务器是否过载或是否处于故障状态,并且允许在一个或多个主服务器发生故障的情况下将业务重新路由到至少一个备用服务器。
[0084]
具体地,管理层服务器被配置为分配第一组用户设备以访问第一服务器,并且分配至少一个其他组用户设备以访问至少一个其他服务器。值得注意的是,不同用户设备集与不同主服务器相关联,使得每组用户设备被分配执行不同角色。在一个示例中,根据系统中主服务器和相关角色的数目,第一组用户设备被分配给被配置为执行第一角色的第一服务器,至少一个其他组用户设备被分配给被配置为执行第二角色的至少一个其他服务器,第三组用户设备被分配给被配置为执行第三角色的第三服务器,以此类推。可选地,该组用户设备可以动态地分配给主服务器,或者该组用户设备可以基于主服务器进行分配,诸如公共标准或特性。在一个示例中,第一组用户设备可以属于一个地理位置,而其他组用户设备可以属于另一地理位置;并且本文中,基于每个用户的地理位置,第一组用户设备被分配给第一服务器,并且其他组用户设备被分配给其他服务器。第一组用户在技术上是指相应用户设备,反之亦然。实际上,管理层服务器被配置为分配第一组用户以访问具有与第一组
用户相关联的用户设备的第一服务器,并且分配至少一个其他组用户以访问具有与至少一个其他组用户相关联的用户设备的至少一个其他服务器。第一组用户因此与第一组用户设备相关联。至少一个其他组用户与至少一个其他组用户设备相关联。
[0085]
进一步地,管理层服务器被配置为接收由第一服务器发送的状态信息和由至少一个其他服务器发送的状态信息。应当理解,状态信息与每个主服务器的当前操作状态有关。每个主服务器的状态信息由管理层服务器持续监测。在一个示例中,第一服务器和至少一个其他服务器被配置为以规则或不规则时间间隔不断地向管理层服务器传输状态信息。这样的状态信息的示例可以包括诸如“活动”、“非活动”、“系统故障”、“系统过载”等信号或消息,这些信号或消息可以被传输到管理层服务器,以指示每个主服务器的操作状态。在另一示例中,状态信息通过轮询从每个主服务器接收。特别地,轮询是通过互联网分组探测(packet internet groper,ping)检查状态并且读取从主服务器接收的响应来执行的。
[0086]
进一步地,管理层服务器被配置为分析状态信息以确定第一服务器的操作状态和至少一个其他服务器的操作状态。例如,基于从每个主服务器接收的状态信息,第一服务器和至少一个其他服务器的操作状态可以被分析为“活动”、“非活动”、“系统故障”、“系统过载”等。应当理解,管理层服务器可以被配置为根据需要确定各种操作状态。然而,在下文中,为了简单和清楚起见,将考虑两种操作状态,即;活动状态(当主服务器启动并且运行时)和故障状态(当主服务器无响应和/或崩溃时)。可选地,操作状态还可以通过确定状态信息的分析时刻与接收时刻之间的时间差来确定。在一个示例中,如果状态信息的分析时刻与状态信息的接收时刻之间的时间差大于预定时间差,则操作状态指示故障状态。应当理解,这样的服务器系统防止了系统中的延迟,否则该延迟可能由于来自主服务器的响应延迟和/或状态信息的分析延迟而发生。
[0087]
可选地,还可以监测其他若干参数以分析主服务器的操作状态,包括但不限于处理引擎带宽、光纤通道带宽、可用驱动器数目、存储设备的每驱动器每秒输入/输出操作数(iops)和独立磁盘的冗余阵列(raid)级别、可用于缓存数据块的存储器、表查找引擎带宽、用于连接控制结构的ram的可用性和出站网络带宽可用性、由流式应用基于每个流而使用的以及与连接控制结构和缓冲区一起使用的共享资源(诸如ram)、子系统之间消息传递的可用带宽、用于在各种服务器之间传递数据的可用带宽等。
[0088]
可选地,管理层包括作为管理层服务器的监测引擎的若干层。例如,管理层服务器可以包括:状态获取层,用于获取每个主服务器的状态信息;角色管理层,用于为不同主服务器和备用服务器分配不同角色并且为其维护结构化列表;以及资源管理层,用于在发生故障的情况下平衡负载并且将业务从主服务器重新路由到备用服务器。
[0089]
可选地,服务器系统还包括用于存储主服务器和备用服务器中的每个的角色的数据库布置。此外,数据库布置被配置为存储主服务器和备用服务器中的每个的操作状态。值得注意的是,这样的信息被实时或接近实时地不断更新。在整个本公开中,本文中使用的术语“数据库布置”是指布置至少一个数据库,当被使用时,该数据库允许管理层服务器存储每个服务器的角色、每个服务器的操作状态以及喜欢。术语“数据库布置”通常是指硬件、软件、固件或其组合,用于以有组织(即,结构化)方式存储信息,从而促使这样的信息的容易的存储、访问(即,检索)、更新和分析。术语“数据库布置”还涵盖向服务器系统提供上述数据库服务的数据库服务器。可以理解,数据储存库是通过数据库布置来实现的。
[0090]
计算机系统可以包括处理器和存储器。处理器可以是一个或多个已知处理设备,诸如由intel
tm
或amd
tm
制造的或由arm许可的微处理器。处理器可以构成同时执行并行处理的单核或多核处理器。例如,处理器可以是配置有虚拟处理技术的单核处理器。在某些实施例中,处理器可以使用逻辑处理器来同时执行和控制多个过程。处理器可以实现虚拟机技术或其他已知技术以提供执行、控制、运行、操纵和存储多个软件过程、应用、程序等的能力。在另一实施例中,处理器可以包括多核处理器布置(例如,双核、四核等),该多核处理器布置被配置为提供并行处理功能,以允许计算机系统同时执行多个过程。本领域普通技术人员将理解,可以实现提供本文中公开的能力的其他类型的处理器布置。此外,存储器可以包括存储一个或多个程序(诸如(多个)应用(app))的易失性或非易失性、磁性、半导体、固态、磁带、光学、可移动、不可移动或其他类型的存储设备或有形(即,非暂态)计算机可读介质。
[0091]
(多个)程序可以包括在由一个或多个处理器执行时执行已知操作系统功能的操作系统(未示出)。例如,操作系统可以包括microsoft windows
tm
、unix
tm
、linux
tm
、android
tm
和apple
tm
操作系统、个人数字助理(pda)类型的操作系统(诸如microsoft ce
tm
)或其他类型的操作系统。因此,所公开的实施例可以与运行任何类型操作系统的计算机系统一起操作和起作用。计算机系统还可以包括在由处理器执行时提供与网络和/或本地网络的通信的通信软件,诸如网络浏览器软件、平板电脑或智能手持设备联网软件等。
[0092]
根据一个实施例,管理层服务器还被配置为:如果第一服务器的操作状态指示第一服务器的故障状态,则将第一角色作为第一空闲角色进行通告,并且如果至少一个其他服务器的操作状态指示至少一个其他服务器的故障状态,则将至少一个其他角色作为至少一个其他空闲角色进行通告。具体地,如果第一服务器的操作状态为故障状态,则管理层服务器发出信号作为关于第一角色为空闲角色的轮询,并且任何备用服务器都可以担任第一角色。类似地,如果其他服务器的操作状态指示其他服务器的故障状态,则管理层服务器发出信号作为关于其他角色为空闲角色的轮询。本文中,术语“空闲角色”是指当前没有被任何服务器执行并且因此可以被任何服务器自由执行的任务、功能或程序。如前所述,角色管理层被配置为针对每个服务器维护每个角色的列表,并且实时地持续更新该列表。通告角色是有益的,因为不需要单独轮询每个服务器以获取可用性。如果接收通告的服务器可以发挥作用,它可以比单独轮询更快。例如,可能有数百台服务器,并且逐一询问这些服务器的可用性需要时间,并且会导致提供给用户设备的服务中断更长时间。例如,通告可以使用多播或广播协议来进行。通告可以使用单播(例如,通过使用用户数据报协议)来进行,以减少回复的负载。
[0093]
此外,管理层服务器被配置为当第一服务器的操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为第一角色,并且将第一组用户设备重新分配给至少一个备用服务器中的第一备用服务器。在这种情况下,第一组用户设备与第一服务器之间的通信链路可以被暂停,并且新的通信链路可以在第一组用户设备与至少一个备用服务器中的第一备用服务器之间被建立。应当理解,备用服务器的操作状态是在将第一组用户设备分配给特定备用服务器之前确定的。值得注意的是,最初由第一服务器执行的第一角色被指定为由备用服务器执行。可选地,当第一服务器的操作状态指示故障状态时,管理层服务器还被配置为确定第一角色的当前执行状态,并且将至少一个备用服务器
中的第一备用服务器的角色更新为当前执行状态。
[0094]
进一步地,管理层服务器被配置为当至少一个其他服务器的操作状态指示故障状态时,将至少一个备用服务器中的另一备用服务器的角色更新为至少一个其他角色,并且将至少一个其他组用户设备重新分配给至少一个其他备用服务器。在这种情况下,其他组用户设备与其他服务器之间的通信链路可以被暂停,并且新的通信链路可以在其他组用户设备与至少一个备用服务器中的另一备用服务器之间被建立。应当理解,备用服务器的操作状态是在将其他组用户设备分配给特定备用服务器之前确定的。值得注意的是,最初由其他服务器执行的其他角色被指定为由特定备用服务器执行。可选地,当至少一个其他服务器的操作状态指示故障状态时,管理层服务器还被配置为确定至少一个其他角色的当前执行状态,并且将至少一个备用服务器中的至少一个其他备用服务器的至少一个其他角色更新为当前执行状态。
[0095]
事实上,这种更新角色的建立使得能够高效地使用网络资源(备用服务器)。可以减少备用服务器的数量,因为每个备用服务器可以被配置为承担任何角色(第一空闲角色或其他空闲角色)。因此,无需为每个可能的角色配备专用的备用服务器。例如,空闲角色的通告可以通过向备用服务器发送消息来实现。消息传递可以使用例如多播协议来进行,以使得消息能够比一次轮询每个备用服务器更快地到达备用服务器。
[0096]
在整个本公开中,如本文中使用的术语“当前执行状态”是指在服务器发生故障、过载或信号中断之前第一服务器和至少一个其他服务器中的每个的正在进行的功能状态。值得注意的是,与每个服务器相关联的用户设备被配置为在规则时间间隔内获取和存储磁盘映像。本文中,磁盘映像可以包括时间戳和在特定时间戳处执行的指示服务器的执行状态的指令代码。例如,在游戏应用的情况下,磁盘映像可以对应于游戏的级别,或可以对应于游戏被中断的时间戳,包括用于其的指令集。此外,所获取的磁盘映像与管理层服务器共享,管理层服务器进而被配置为与被分配以执行空闲角色的备用服务器共享磁盘映像。
[0097]
根据一个实施例,服务器系统还包括代理服务器层,其中代理服务器层被配置为将重新分配的第一组用户设备重新路由到至少一个备用服务器,并且将重新分配的至少一个其他组用户设备重新路由到至少一个其他备用服务器。在整个本公开中,术语“代理服务器层”是指服务器与用户设备之间的中间接口,该用户设备与第一组用户设备和其他组用户设备相关联。值得注意的是,代理服务器层被配置为向服务器请求从第一服务器和/或其他服务器可获取的某种服务,诸如文件、连接、网页或其他资源。应当理解,代理服务器层完成一个或多个操作,如本领域已知的,包括向用户提供匿名性、使用高速缓存增强性能、提高安全性等。此外,服务器系统还包括路由器、交换机和交换结构,以执行将第一组用户设备和其他组用户设备重新路由到特定备用服务器。使用上述代理服务器层建立的技术效果是为设备的用户启用不间断的服务。实际上,重新配置代理服务器使得能够在需要时将信令从用户终端重新路由到备用服务器。这样,会话就不会出现重大中断,从而提高了可用性。
[0098]
本公开还涉及改进网络安全的方法。上面公开的各种实施例和变体比照适用于该方法。
[0099]
可选地,该方法还包括如果第一服务器的操作状态指示第一服务器的故障状态,则将第一角色作为第一空闲角色进行通告,并且如果至少一个其他服务器的操作状态指示
至少一个其他服务器的故障状态,则将至少一个其他角色作为至少一个其他空闲角色进行通告。
[0100]
可选地,该方法还包括在第一服务器中根据第一角色运行第一可执行软件,以及在至少一个其他服务器中根据至少一个其他角色运行至少一个其他可执行软件。
[0101]
可选地,第一可执行软件和至少一个其他可执行软件相同。这在大量用户正在使用相应用户设备访问相同可执行软件(诸如相同游戏)的系统中是有益的。相应用户的第一组用户设备将在这样的场景中最初被配置为使用第一服务器(运行第一可执行软件)和具有相应用户设备的至少一个其他组用户来访问至少一个其他服务器(运行相同的第一可执行软件)。即,所有用户将经由相应用户设备访问实际上相同的软件(诸如相同的游戏)。在第一服务器出现故障的情况下,使用第一服务器及其相应第一组用户设备的第一组用户可能会遇到服务中断(直到备用服务器被配置为充当第一服务器的角色)但是使用其相应至少一个其他组用户设备的至少一个其他组用户不会经历服务中断。
[0102]
可选地,第一可执行软件和至少一个其他可执行软件不同。
[0103]
可选地,该方法还包括:当第一服务器的操作状态指示故障状态时,确定第一角色的当前执行状态,并且将至少一个备用服务器中的第一备用服务器的角色更新为当前执行状态。这样,第一角色可以快速地被使用。
[0104]
可选地,该方法还包括当至少一个其他服务器的操作状态指示故障状态时,确定至少一个其他角色的当前执行状态,并且将至少一个备用服务器中的至少一个其他备用服务器的至少一个其他角色更新为当前执行状态。这样,第一角色可以快速地被使用。
[0105]
可选地,该方法还包括确定状态信息的分析时刻与接收时刻之间的时间差;分析该时间差是否大于预定时间差;以及如果时间差大于预定时间差,则认为操作状态指示故障状态。这为服务器由于某种原因无法提供通信的情况提供了一种故障安全机制。例如,服务器可能没有操作电源,或者操作系统可能崩溃,或者它可能正在维护中,或者应用/服务崩溃。
[0106]
可选地,该方法还包括配置代理服务器层以将重新分配的第一组用户设备重新路由到至少一个备用服务器,并且将重新分配的至少一个其他组用户设备重新路由到至少一个其他备用服务器。
[0107]
进一步可选地,该方法还包括在至少一个备用服务器被更新为第一角色或一个其他角色的情况下建立至少一个附加备用服务器。这是有益的,因为这样可以在另一服务器崩溃时保持足够数目的备用服务器。此外,根据附加或备选实施例,被通告的角色可以是备用服务器的角色。
[0108]
附图的详细说明
[0109]
参考图1,示出了根据本公开的实施例的示例性服务器系统100的框图。如图所示,服务器系统100包括第一服务器102、至少一个其他服务器104和至少一个备用服务器106。此外,服务器系统100包括分配给第一服务器102的第一组用户设备108、110、112,和分配给其他服务器104的至少一个其他组用户设备114、116、118。本文中,备用服务器106处于待机模式,因为没有用户设备被分配给备用服务器106。此外,服务器系统100包括通信耦合到第一服务器102、至少一个其他服务器104和至少一个备用服务器106的管理层服务器120。本文中,管理层服务器120被配置为确定第一服务器102、至少一个其他服务器104和至少一个
备用服务器106中的每个的操作状态以用于在第一服务器102和/或其他服务器104发生故障的情况下进行资源管理和业务重新路由。
[0110]
图1仅是示例,其不应当过度限制本文中的权利要求的范围。应当理解,服务器系统100的特定名称是作为示例提供的,并且不应当被解释为将系统100限制为特定数目的服务器、管理层服务器和用户设备。本领域技术人员将认识到本公开的实施例的很多变化、备选和修改。
[0111]
参考图2a和图2b,示出了根据本公开的各种实施例的系统200的网络环境的框图。如图所示,网络环境200包括与第一服务器204(诸如图1的第一服务器)、第一备用服务器206(诸如图1的至少一个备用服务器)、以及至少一个其他服务器208(诸如图1的至少一个其他服务器)通信耦合的管理层服务器202(诸如图1的管理层服务器)。此外,网络环境200包括被配置为存储服务器204、206、208中的每个的当前执行状态的数据库布置210。此外,网络环境200包括代理服务器层212。
[0112]
如图2a所示,与第一组用户设备214a、214b和214c相关联的第一组用户经由代理服务器层212与第一服务器204连接,并且与至少一个其他组用户设备216a、216b和216c相关联的至少一个其他组用户(第二组用户)经由代理服务器层212与至少一个其他服务器208连接。本文中,第一服务器204根据第一角色运行第一可执行软件,并且至少一个其他服务器208根据第二角色运行第二可执行软件。此外,第一服务器204和至少一个其他服务器208被配置为向管理层服务器202发送状态信息。本文中,第一服务器204和至少一个其他服务器208将状态信息作为“活动”进行发送,并且从而用户设备214a、214b和214c与第一服务器204之间的连接以及用户设备216a、216b和216c与至少一个其他服务器208之间的连接被维持。
[0113]
如图2b所示,第一服务器204和至少一个其他服务器(也称为第二服务器)208被配置为向管理层服务器202发送状态信息。本文中,第一服务器204将状态信息作为“故障”进行发送,并且至少一个其他服务器208将状态信息作为“活动”发送给管理层服务器202。在这种情况下,管理层服务器202被配置为将第一角色作为空闲角色进行通告并且将与第一组用户相关联的用户设备214a、214b和214c分配给第一备用服务器206。本文中,第一组用户的重新路由由代理服务器层212执行。进一步地,第一备用服务器206被配置为根据第一角色执行第一可执行软件。具体地,当前执行状态从数据库布置210访问。此外,如上所述,至少一个其他服务器208被分配,与用户设备216a、216b和216c相关联的至少一个其他组用户(第二组用户)经由代理服务器层212与至少一个其他服务器208连接。本文中,至少一个其他服务器208根据第二角色运行第二可执行软件。本文中,备用服务器206向管理层服务器202发送状态信息作为“活动”,并且从而用户设备214a、214b和214c与备用服务器206的连接被维持;并且至少一个其他服务器208向管理层服务器202发送状态信息作为“活动”,并且从而用户设备216a、216b和216c与至少一个其他服务器208的连接被维持。至少一个其他服务器可以被认为是相对于第一服务器的第二服务器以澄清用语。至少一个其他组用户设备(和相应用户)可以被认为是第二组以澄清用语。
[0114]
参考图3,示出了框图,该框图描绘了根据本公开的实施例的在服务器系统300中采用的用于将用户设备从一个服务器重新路由到另一服务器的功能元件。如图所示,服务器系统300包括管理层服务器302,该管理层服务器302与路由器304通信以将业务从一个服
务器重新路由到另一服务器。此外,路由器304连接到第一服务器306和备用服务器308。此外,用户设备310和312分别经由交换机314和316被分配给第一服务器306。如图所示,用户设备310包括被配置为存储用户设备306的当前执行状态的存储器310a,并且用户设备312包括被配置为存储用户设备312的当前执行状态的存储器312a。此外,第一服务器306的状态信息被传输给管理层服务器302。在状态信息为“活动”的情况下,路由器304与第一服务器306以及用户设备310和312建立链路“a”。在状态信息为“故障”的情况下,如图所示,路由器304与备用服务器308以及用户设备310和312建立链路“b”。
[0115]
参考图4,示出了框图,该框图描绘了根据本公开的实施例的与交换机400b通信的管理层服务器400a的架构。如图所示,管理层服务器400a包括处理器402,包括随机存取存储器(ram)404、闪存406、bios 408和操作系统(os)410。此外,管理层服务器400a包括电源412。本文中,管理层服务器400a的主要功能被配置为提高服务器的操作效率。处理器402以低功率和低时钟速率操作。处理器402控制和处理来自开关400b的信号。本文中,响应于轮询请求,处理器读取交换机400b的ram 418中的状态信息并且确定用户设备的操作状态。此外,闪存406被配置为存储来自bios 408的引导代码和来自os 410的代码,以启用管理层服务器400a的操作。ram 404被配置为存储每个服务器的更新后的角色并且维护与每个服务器的操作状态相关的结构化列表。
[0116]
如图所示,交换机400b经由总线414与管理层服务器400a通信。交换机400b包括处理器416,处理器416用于控制其操作并且用于确定每个数据分组的目的地以确保数据的可靠传输。此外,处理器416维护与服务器的操作状态相对应的各种参数的列表。这样的信息存储在交换机400b的ram 418或非易失性存储器420中。
[0117]
参考图5a-5b,示出了流程图500,该流程图500描绘了根据本公开的实施例的用于管理服务器系统的方法的步骤。在步骤502,在第一服务器中执行第一角色。在步骤504,在至少一个其他服务器中执行至少一个其他角色。在步骤506,分配第一组用户设备以访问第一服务器,并且分配至少一个其他组用户设备以访问至少一个其他服务器。在步骤508,从第一服务器和至少一个其他服务器接收状态信息。在步骤510,通过分析状态信息来确定第一服务器的操作状态和至少一个其他服务器的操作状态。在步骤512,当第一服务器的操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为第一角色,并且将第一组用户设备重新分配给至少一个备用服务器中的第一备用服务器。在步骤514,当至少一个其他服务器的操作状态指示故障状态时,将至少一个备用服务器中的另一备用服务器的角色更新为至少一个其他角色,并且将至少一个其他组用户设备重新分配给至少一个其他备用服务器。
[0118]
在不脱离如所附权利要求限定的本公开的范围的情况下,对前述本公开的实施例的修改是可能的。用于描述和要求保护本公开的诸如“包含”、“包括”、“结合”、“具有”、“是”等表达意在以非排他性方式解释,即,允许没有明确描述的项目、组件或元件也存在。对单数的引用也应当被解释为与复数有关。
技术特征:1.一种服务器系统(100,200),包括:第一服务器(102,204),被配置为执行第一角色;至少一个其他服务器(104,208),被配置为执行至少一个其他角色;至少一个备用服务器(106,206);以及管理层服务器(120,202),其中所述管理层服务器(120,202)被配置为:分配第一组用户设备(108,110,112,214a,214b,214c)以访问所述第一服务器(102,204)并且分配至少一个其他组用户设备(114,116,118,216a,216b,216c)以访问所述至少一个其他服务器(104,208);接收由所述第一服务器(102)发送的状态信息和由所述至少一个其他服务器(104)发送的状态信息;分析所述状态信息以确定所述第一服务器(102)的操作状态和所述至少一个其他服务器(104)的操作状态;当所述第一服务器(102)的所述操作状态指示故障状态时,将所述至少一个备用服务器(106)中的第一备用服务器的角色更新为所述第一角色,并且将所述第一组用户设备(108,110,112)重新分配给所述至少一个备用服务器(106)中的所述第一备用服务器;以及当所述至少一个其他服务器(104)的所述操作状态指示故障状态时,将所述至少一个备用服务器(106)中的另一备用服务器的角色更新为所述至少一个其他角色,并且将所述至少一个其他组用户设备(114,116,118)重新分配给所述至少一个其他备用服务器(106)。2.根据权利要求1所述的服务器系统,其中所述管理层服务器(120,202)还被配置为:如果所述第一服务器(102)的所述操作状态指示所述第一服务器的故障状态,则将所述第一角色作为第一空闲角色进行通告,并且如果所述至少一个其他服务器的所述操作状态指示所述至少一个其他服务器的故障状态,则将所述至少一个其他角色作为至少一个其他空闲角色进行通告。3.根据前述权利要求中任一项所述的服务器系统,其中所述第一服务器根据所述第一角色运行第一可执行软件,并且所述至少一个其他服务器根据所述至少一个其他角色运行至少一个其他可执行软件。4.根据权利要求3所述的服务器系统,其中所述第一可执行软件和所述至少一个其他可执行软件相同。5.根据权利要求3所述的服务器系统,其中所述第一可执行软件和所述至少一个其他可执行软件不同。6.根据前述权利要求中任一项所述的服务器系统,其中当所述第一服务器的所述操作状态指示故障状态时,所述管理层服务器还被配置为:确定所述第一角色的当前执行状态,并且将所述至少一个备用服务器中的所述第一备用服务器的所述角色更新为所述当前执行状态。7.根据前述权利要求中任一项所述的服务器系统,其中当所述至少一个其他服务器的所述操作状态指示故障状态时,所述管理层服务器还被配置为:确定所述至少一个其他角色的当前执行状态,并且将所述至少一个备用服务器中的所述至少一个其他备用服务器的所述至少一个其他角色更新为所述当前执行状态。8.根据前述权利要求中任一项所述的服务器系统,其中如果所述状态信息的分析时刻
与接收时刻之间的时间差大于预定时间差,则所述操作状态指示故障状态。9.根据前述权利要求中任一项所述的服务器系统,其中所述服务器系统还包括代理服务器层(212),其中所述代理服务器层(212)被配置为:将重新分配的所述第一组用户设备重新路由到所述至少一个备用服务器,并且将重新分配的所述至少一个其他组用户设备重新路由到所述至少一个其他备用服务器。10.一种用于管理服务器系统的方法,所述方法包括:在第一服务器中执行第一角色;在至少一个其他服务器中执行至少一个其他角色;分配第一组用户设备(108,11,112)以访问所述第一服务器并且分配至少一个其他组用户设备(114,116,118)以访问所述至少一个其他服务器;从所述第一服务器接收状态信息并且从所述至少一个其他服务器接收状态信息;通过分析所述状态信息来确定所述第一服务器的操作状态和所述至少一个其他服务器的操作状态;当所述第一服务器的所述操作状态指示故障状态时,将至少一个备用服务器中的第一备用服务器的角色更新为所述第一角色,并且将所述第一组用户设备(108,110,112)重新分配给所述至少一个备用服务器中的所述第一备用服务器;以及当所述至少一个其他服务器的所述操作状态指示故障状态时,将所述至少一个备用服务器中的另一备用服务器的角色更新为所述至少一个其他角色,并且将所述至少一个其他组用户设备(114,116,118)重新分配给所述至少一个其他备用服务器。11.根据权利要求10所述的用于管理服务器系统的方法,其中所述方法还包括:如果所述第一服务器的所述操作状态指示所述第一服务器的故障状态,则将所述第一角色作为第一空闲角色进行通告,并且如果所述至少一个其他服务器的所述操作状态指示所述至少一个其他服务器的故障状态,则将所述至少一个其他角色作为至少一个其他空闲角色进行通告。12.根据权利要求10至11中任一项所述的用于管理服务器系统的方法,还包括:在所述第一服务器中根据所述第一角色运行第一可执行软件,并且在所述至少一个其他服务器中根据所述至少一个其他角色运行至少一个其他可执行软件。13.根据权利要求12所述的管理服务器系统的方法,其中所述第一可执行软件和所述至少一个其他可执行软件相同。14.根据权利要求12所述的管理服务器系统的方法,其中所述第一可执行软件和所述至少一个其他可执行软件不同。15.根据前述权利要求10至14中任一项所述的管理服务器系统的方法,其中当所述第一服务器的所述操作状态指示故障状态时,确定所述第一角色的当前执行状态,并且将所述至少一个备用服务器中的所述第一备用服务器的所述角色更新为所述当前执行状态。16.根据前述权利要求10至15中任一项所述的管理服务器系统的方法,其中当所述至少一个其他服务器的所述操作状态指示故障状态时,确定所述至少一个其他角色的当前执行状态,并且将所述至少一个备用服务器中的所述至少一个其他备用服务器的所述至少一个其他角色更新为所述当前执行状态。17.根据前述权利要求10至16中任一项所述的管理服务器系统的方法,其中所述方法
还包括:确定所述状态信息的分析时刻与接收时刻之间的时间差;分析所述时间差是否大于预定时间差;以及如果所述时间差大于所述预定时间差,则认为所述操作状态指示故障状态。18.根据前述权利要求10至17中任一项所述的用于管理服务器系统的方法,其中所述方法还包括:配置代理服务器层以将重新分配的所述第一组用户设备重新路由到所述至少一个备用服务器,并且将重新分配的所述至少一个其他组用户设备重新路由到所述至少一个其他备用服务器。19.根据前述权利要求10至17中任一项所述的管理服务器系统的方法,其中所述方法还包括:在所述至少一个备用服务器被更新为所述第一角色或所述一个其他角色的情况下,建立至少一个附加备用服务器。20.一种管理服务器系统的方法,所述服务器系统包括用于根据第一角色执行第一软件的第一服务器、用于根据第二角色执行至少一个其他软件的至少一个其他服务器、具有第三角色的至少一个备用服务器、和管理层服务器,所述方法包括:向所述管理层服务器提供角色列表;分配第一组用户设备以访问在所述第一服务器中运行的可执行的所述第一软件,并且分配至少一个其他组用户设备以访问在所述至少一个其他服务器中运行的可执行的所述至少一个其他软件;由所述第一服务器和所述至少一个其他服务器向所述管理层服务器发送状态信息;由所述管理层服务器接收所述状态信息并且分析所接收的所述状态信息,以确定所述第一服务器的第一操作状态和所述至少一个其他服务器的第二操作状态;如果所述第一操作状态指示所述第一服务器发生故障,则由所述管理层服务器将所述第一角色作为空闲角色进行通告,或者如果所述第二操作状态指示所述至少一个其他服务器发生故障,则由所述管理层服务器将所述第二角色作为空闲角色进行通告;将所述至少一个备用服务器的所述第三角色更新为所通告的所述空闲角色;根据更新后的所述第三角色在所述至少一个备用服务器中执行第三软件;以及重新分配被分配给发生故障的所述服务器的一组用户设备以访问运行所述至少一个备用服务器的可执行的所述第三软件。
技术总结一种服务器系统(100)包括执行第一角色的第一服务器(102,204)、执行其他角色的其他服务器(104,208)、备用服务器(106,206)和管理层服务器(120,202)。管理层服务器被配置为分配第一组用户设备(108,110,112,214A,214B,214C)以访问第一服务器并且分配其他组用户设备(114,116,118,216A,216B,216C)以访问其他服务器(104,208),接收由第一服务器发送的状态信息和由其他服务器发送的状态信息,分析状态信息以确定第一服务器的操作状态和其他服务器的操作状态,当第一服务器的操作状态指示故障状态时,将备用服务器的角色更新为第一角色并且将第一组用户设备重新分配给备用服务器,以及当其他服务器的操作状态指示故障状态时,将另一备用服务器的角色更新为其他角色并且将其他组用户设备重新分配给另一备用服务器。器。器。
技术研发人员:J
受保护的技术使用者:舒佩塞尔公司
技术研发日:2021.04.01
技术公布日:2022/11/1