故障切换系统及方法技术方案

技术编号:12989390 阅读:123 留言:0更新日期:2016-03-10 00:39
本发明专利技术提供了一故障切换系统、服务器、方法及计算机可读介质。该系统包括一用于与客户机及备用服务器通信的主服务器。所述主服务器包括一主会话管理器、一主调度器、一主指令处理引擎及一主验证引擎。所述方法涉及了接收一输入消息、获取确定信息、处理所述输入消息及复制所述输入消息及所述确定信息。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算机及网络体系结构,特别涉及一种故障切换系统及方法
技术介绍
社会越来越多地依赖于计算机和网络来进行互动及贸易。为实现在关键系统中的高水平的可用性要求,应尽量减小由软件及硬件缺陷引起的意外故障时间。金融服务业是一种系统可用性要求高的行业,但其仅为一种产业的一个例子。的确,在现今的金融业,大量的数据处理活动由计算机系统支持。特别有趣的是,所谓的“实时”及“近实时”的联机事务处理应用程序,其为典型地长时间高速地和低延时地处理大量应用的交易事务。这些应用程序一般显示出以下特征:(1)复杂且高速的数据处理,(2)可靠的非易失性数据存储,以及(3)高水平的可用性,例如,支持在大体上不间断的基础上服务的能力。当实施时,由于它们在系统行为上存在相互矛盾的影响,现有的应用程序倾向于在这些性能要求之间进行折衷,且没有设计可以同时地完全满足全部三个特征,如下面更详细的概述。首先,复杂的数据处理是指及时执行大量的计算、数据库恢复/更新等的能力。这可以通过并行处理实施,这里多个工作单元可以在相同的物理机器或在分布式网络上同时执行。在一些系统中,每个事务的结果取决于在先已完成的事务的结果。这些系统的这种并行方面在本质上是不确定的:归因于竞态条件、操作系统调度任务或者可变的网络延迟,不能预测的消息及线程执行顺序,也不能简单地通过将输入消息的副本传递给一复制的系统中来对其进行并行处理。不确定的系统具有不同的输出。因此,抱有一旦另一计算机故障具有一替换的目的,在两个不同的计算机上并行运行两个进程,不确定的系统呈现出严峻的挑战。其次,可靠的非易失性数据存储是指持续地存储所处理的数据的能力,即使大量的系统软件或硬件组件遇到意外的故障。当访问或修改共享数据时,其通常可以通过使用原子性的(Atomic)、一致性的(Consistent)、隔离性的(Isolated)和持久性的(Durable)(“ACID”)事务来实现。一旦工作单元完成,ACID事务可以确保数据的完整性和持续性。每个提交的ACID事务被写入非易失性计算机内存(硬盘),这帮助确保数据的持久性,但其在性能方面有很大的损失,且通常拖慢整个系统。第三,高度可用的系统试图确保一给定的计算机系统的可用性的百分比尽可能接近该时间的100%。这种可用性可以通过冗余的软件和/或硬件实施,其接管了组件故障检测的功能。为了成功,故障切换不仅复制数据,也复制进程状态。如本领域技术人员将领会的,在不确定的系统中(例如系统内相同事件集合的计算处理可能具有一个以上的结果,其取决于其中这些事件的处理顺序),状态复制将尤为具有挑战性。高度可用的软件应用程序通常部署在冗余环境中,以减少和/或消除通常与底层硬件关联的单点故障。两种常见的方法通常被认为是一种高度可用性的形式,被称为热故障切换和温和故障切换。热故障切换涉及是指在多个系统中同时处理相同的输入,本质上在这些系统中的其中一个发生故障的情况下提供完全冗余。温和故障切换涉及是指复制应用程序(例如数据)的状态于备用系统中,而不处理在备用系统中的数据,但具有能够加载数据处理的引用程序的能力及在主系统故障时支持的能力。冷故障切换并不认为是许多高度可用性的形式,其为另一种故障切换类型,是指简单地提升备用系统及准备该备用系统以承担自主系统的处理责任。在热故障切换配置中,两个应用程序的实例同时运行在两个不同的硬件设备上,处理相同的输入副本。如果其中一个设备遇到一个关键的故障,一补充同步系统可以确保另一个继续支持工作负载。在温和故障切换配置中,一个系统设计为主系统,其运行应用程序;一旦故障,第二个系统,处于备用状态等待的指定的备份系统,将“被唤醒”、接管、及重新恢复该功能。现有技术的热故障切换办法具有至少两个缺点。第一,补充软件必须运行,以保持两个系统同步。在这种不确定系统的情况下,这种同步运行在性能及复杂性方面可能会导致无法接受的(或其他不良的)下降,这里事件的到达顺序必须保证是完全相同的。另外,现有技术的用于这些应用的并行系统通常允许多线程同步执行,因此它们有固有的不确定性。不确定性还为系统的服务器及客户在地理上分散,这里可变网络延迟了提供消息至一不可预知序列中的服务器。温和故障切换可以用于克服与热故障切换相关联的若干问题。通过复制系统数据至冗余的备用系统并且随后恢复应用功能至辅助系统,温和故障切换可以为另一种方式以实施不确定系统的故障切换。这种途径具有其缺点,在时间上需要恢复数据至一致状态,然后将该应用恢复至功能状态,最后,返回该应用至进程中中断的点。这个过程正常花费数个小时,需要人工干预,且一般不能恢复正在进行的事务。一些专利尝试解决至少一些前述的问题。专利号为5305200的美国专利提出了一种用于在谈判达成的交易场景中买方/卖方和经销商(报价商)之间通信的不可抵赖机制。提供冗余来确保不可抵赖机制在故障事件中起作用。其并未解决不确定性环境中的在线事务处理程序的故障切换。简单地说,专利号为5305200的美国专利旨在提供一种明确的答案给该问题:在遇到一次网络故障后,“指令发送了吗,或者没有发送?”。专利号为5381545的美国专利提出了一种用于备份存储的数据(在数据库中)的技术,而仍对数据进行更新。专利号为5987432的美国专利提出了为了汇编地理分布在全球范围的金融市场数据的容错市场数据股票设备系统。这是一个确定的环境,且该解决方案集中于给消费者提供非中断的单向数据流。专利号为6154847的美国专利提供了一种改进的方法,该方法通过传统的非易失存储器中的事务日志结合在易失性存储器中的事务列表来重新运行事务。专利号为6199055的美国专利提出了一种在一系统及一便携式处理器之间穿过无担保的通信链路进行分布式事务的方法。专利号为6199055的美国专利处理了认证,确保用远端设备完成事务,且在遇到故障时复位远端设备。一般地,前述事项并未解决在不确定性环境中的在线事务处理应用的故障切换。专利号为6202149的美国专利提出了一种用于自动重新分配任务来减少计算机运行中断的影响的方法及设备。该设备至少包括一个冗余组,由一个或多个计算机系统组成,其反过来为自身包含一个或多个计算分区。该分区包括数据库机制的副本,其在每个计算系统分区复制。该冗余组监控计算系统的状态及计算系统分区,并分配任务至基于计算系统的监测状态的计算系统。专利号为6202149的本文档来自技高网...

【技术保护点】
一种用于故障切换的系统,包括:配置为与客户机通信的主服务器;以及与所述主服务器通信的备用服务器,所述备用服务器配置为在故障切换期间与所述客户机通信,所述主服务器包括:配置为接收来自所述客户机的输入消息的主会话管理器;配置为获取序列号及时间戳的主调度器,所述主调度器进一步配置为调度所述输入消息、所述序列号及所述时间戳至关联的主引擎组件,所述主调度器进一步配置为复制所述输入消息、所述序列号及所述时间戳至所述备用服务器;具有复数个主引擎组件的主指令处理引擎,该复数个主引擎组件包括所述关联的主引擎组件,所述主指令处理引擎配置为处理所述输入消息以生成一主输出消息,每个主引擎组件配置为处理一种输入消息类型;以及配置为接收所述主输出消息的主验证引擎,所述主验证引擎进一步配置为发送一验证消息至所述备用服务器并发送所述主输出消息至所述会话管理器以发送至所述客户机;以及所述备用服务器包括:配置为在故障切换事件中承担主要作用的备份会话管理器;配置为接收来自所述主调度器的所述输入消息、所述序列号及所述时间戳的备份调度器,且所述备份调度器进一步配置为调度所述输入消息、所述序列号及所述时间戳至关联的备用引擎组件;具有复数个备份引擎组件的备份指令处理引擎,该复数个备份引擎组件包括所述关联的备份引擎组件,每个备份引擎组件配置为处理一种备份消息类型以生成备份输出消息;以及配置为接收来自所述备份指令处理引擎的所述备份输出消息以及来自所述主验证引擎的所述验证消息的备份验证引擎,为了验证所述主输出消息,所述备份验证引擎进一步配置为将所述验证消息与所述备份输出消息进行比较。...

【技术特征摘要】
【国外来华专利技术】2013.06.13 US 61/8346001.一种用于故障切换的系统,包括:
配置为与客户机通信的主服务器;以及
与所述主服务器通信的备用服务器,所述备用服务器配置为在故障切
换期间与所述客户机通信,
所述主服务器包括:
配置为接收来自所述客户机的输入消息的主会话管理器;
配置为获取序列号及时间戳的主调度器,所述主调度器进一步配置
为调度所述输入消息、所述序列号及所述时间戳至关联的主引擎
组件,所述主调度器进一步配置为复制所述输入消息、所述序列
号及所述时间戳至所述备用服务器;
具有复数个主引擎组件的主指令处理引擎,该复数个主引擎组件包
括所述关联的主引擎组件,所述主指令处理引擎配置为处理所述
输入消息以生成一主输出消息,每个主引擎组件配置为处理一种
输入消息类型;以及
配置为接收所述主输出消息的主验证引擎,所述主验证引擎进一步
配置为发送一验证消息至所述备用服务器并发送所述主输出消
息至所述会话管理器以发送至所述客户机;以及
所述备用服务器包括:
配置为在故障切换事件中承担主要作用的备份会话管理器;
配置为接收来自所述主调度器的所述输入消息、所述序列号及所述
时间戳的备份调度器,且所述备份调度器进一步配置为调度所述
输入消息、所述序列号及所述时间戳至关联的备用引擎组件;
具有复数个备份引擎组件的备份指令处理引擎,该复数个备份引擎

\t组件包括所述关联的备份引擎组件,每个备份引擎组件配置为处
理一种备份消息类型以生成备份输出消息;以及
配置为接收来自所述备份指令处理引擎的所述备份输出消息以及
来自所述主验证引擎的所述验证消息的备份验证引擎,为了验证
所述主输出消息,所述备份验证引擎进一步配置为将所述验证消
息与所述备份输出消息进行比较。
2.根据权利要求1所述的系统,其特征在于,所述备份调度器进一步配置为在
接收到来自所述主调度器的所述输入消息、所述序列号及所述时间戳后生成确
认消息。
3.根据权利要求2所述的系统,其特征在于,所述备份调度器进一步配置为发
送所述确认消息至所述主验证引擎。
4.根据权利要求3所述的系统,其特征在于,所述主验证引擎进一步配置为在
为了发送至所述客户机而将所述主输出消息发送至所述会话管理器之前,等待
所述确认消息。
5.根据权利要求1至4任一所述的系统,其特征在于,所述验证消息包括所述
主输出消息的一副本。
6.根据权利要求1至5任一所述的系统,其特征在于,进一步包括一用于将所
述主服务器连接至所述备用服务器的低延时链路。
7.根据权利要求6所述的系统,其特征在于,所述低延时链路包括一PCIe链路。
8.根据权利要求1至7任一所述的系统,其特征在于,所述输入消息与一股票
交易中的买方指令或卖方指令中的一个相关联。
9.根据权利要求1至8任一所述的系统,其特征在于,所述输入消息类型与一
组股票相关联。
10.根据权利要求1至9任一所述的系统,其特征在于,所述主调度器进一步配
置为制作一外部调用。
11.根据权利要求10所述的系统,其特征在于,所述外部调用包括一对于价格
的请求。
12.根据权利要求1至11任一所述的系统,其特征在于,所述主调度器进一步
配置为接收一价格馈入。
13.根据权利要求1至12任一所述的系统,其特征在于,所述主服务器配置为
在复制所述输入消息至所述备用服务器之前开始处理所述输入消息。
14.根据权利要求13所述的系统,其特征在于,所述主服务器配置为在完成处
理所述输入消息之前完成复制所述输入消息至所述备用服务器。
15.一种用于与客户机通信的主服务器,其特征在于,所述主服务器包括:
配置为接收一来自所述客户机的输入消息的主会话管理器;
配置为获取一序列号及一时间戳的主调度器,所述主调度器进一步配置为
调度所述输入消息及所述序列号至一关联的主引擎组件,所述主调度器
进一步配置为复制所述输入消息、所述序列号及所述时间戳至一备用服
务器;
具有复数个主引擎组件的主指令处理引擎,该复数个主引擎组件包括所述
关联的主引擎组件,所述主指令处理引擎配置为处理所述输入消息以生
成一主输出消息,每个主引擎组件配置为处理一种输入消息类型;以及
配置为接收所述主输出消息的主验证引擎,所述主验证引擎进一步配置
为发送一验证消息至所述备用服务器并发送所述主输出消息至所述会
话管理器以发送至所述客户机。
16.根据权利要求15所述的主服务器,其特征在于,进一步配置为在复制来自

\t所述主调度器的所述输入消息、所述序列号及所述时间戳后接收来自所述备用
服务器的确认消息。
17.根据权利要求16所述的主服务器,其特征在于,所述主验证引擎配置为接...

【专利技术属性】
技术研发人员:格利高利·A·阿伦都铎·莫洛森阿德里安·G·杜米特拉凯帕特里克·J·菲利普斯
申请(专利权)人:多伦多证券交易所
类型:发明
国别省市:加拿大;CA

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1