用于在事务中间件机器环境中持久化事务记录的系统与方法技术方案

技术编号:10093592 阅读:166 留言:0更新日期:2014-05-28 17:40
一种事务系统,可以利用由集群数据库提供的分布式存储与高可用性(HA)能力来支持容易且可行的灾难恢复。事务中间件机器环境包括与事务关联的一个或多个事务应用服务器。这一个或多个事务应用服务器操作成把与该事务关联的事务日志信息持久化到位于本地站点的、与所述一个或多个事务应用服务器连接的数据库中。位于本地站点的数据库操作成把持久化的事务日志信息复制到位于远端站点的远端数据库。在灾难使本地站点不能工作时,远端数据库允许位于远端站点的不同事务应用服务器恢复持久化的事务日志信息并且完成该事务。

【技术实现步骤摘要】
【国外来华专利技术】用于在事务中间件机器环境中持久化事务记录的系统与方法版权声明本专利文档公开内容的一部分包含受版权保护的素材。版权拥有者不反对任何人对专利文档或专利公开内容按照在专利商标局的专利文件或记录中出现那样进行的传真复制,但是除此之外在任何情况下都保留所有版权。
本专利技术一般而言涉及诸如中间件的计算机系统与软件,而且更具体地说涉及在事务中间件机器环境中支持灾难恢复。
技术介绍
事务中间件系统,或者说面向事务的中间件,包括可以处理一个组织内部各种事务的企业应用服务器。随着诸如高性能网络和多处理器计算机之类的新技术的发展,需要进一步提高事务中间件的性能。这些是本专利技术实施例要解决的一般领域。
技术实现思路
本文所述的是一种事务系统,该系统可以利用由集群数据库提供的分布式存储与高可用性(HA)能力来支持容易且可行的灾难恢复。事务中间件机器环境包括与事务关联的一个或多个事务应用服务器。事务应用服务器可以把与该事务关联的事务日志信息持久化到位于本地站点的、与所述一个或多个事务应用服务器连接的数据库中。位于本地站点的数据库可以把持久化的事务日志信息复制到位于远端站点的数据库。当灾难使本地站点不能工作时,远端数据库允许位于远端站点的不同事务应用服务器恢复持久化的事务日志信息并完成该事务。附图说明图1示出了根据本专利技术一种实施例的支持灾难恢复的事务中间件机器环境的图示。图2图示出根据本专利技术一种实施例的用于在事务中间件机器环境中支持灾难恢复的示例性流程图。图3示出了根据本专利技术一种实施例的在事务中间件机器环境中的复杂接口的图示。图4是根据本专利技术一种实施例的用于在事务中间件机器环境中支持灾难恢复的装置的功能性框图。具体实施例本文所描述的是用于支持可以利用具有多个处理器的快速机器以及高性能网络连接的事务中间件系统的系统与方法,其中的事务中间件系统诸如Tuxedo。事务系统可以利用由集群数据库提供的分布式存储与高可用性(HA)能力来支持容易且可行的灾难恢复。事务中间件机器环境包括与事务关联的一个或多个事务应用服务器。所述一个或多个事务应用服务器操作成把与该事务关联的事务日志信息持久化到位于本地站点的、与所述一个或多个事务应用服务器连接的数据库。位于本地站点的数据库操作成把持久化的事务日志信息复制到位于远端站点的远端数据库。当灾难使本地站点不能工作时,远端数据库允许位于远端站点的不同事务应用服务器恢复持久化的事务日志信息并且完成该事务。根据本专利技术的一种实施例,该系统包括高性能硬件,例如64位处理器技术,高性能大型存储器以及冗余InfiniBand和以太网联网连同应用服务器或中间件环境,诸如WebLogic套件,的组合,来提供完整的JavaEE应用服务器联合体,该联合体包括可以快速供应并且可以按需缩放的大规模并行存储器内网格。根据一种实施例,该系统可以部署成作为提供应用服务器网格、存储区域网络和InfiniBand(IB)网络的完全、半或四分之一机架,或者其它配置。中间件机器软件可以提供应用服务器、中间件和其它功能性,诸如像WebLogic服务器、JRockit或者HotspotJVM、OracleLinux或Solaris和OracleVM。根据一种实施例,该系统可以包括经IB网络彼此通信的多个计算节点、IB交换机网关,及存储节点或单元。当实现为机架配置时,机架未使用的部分可以空着或者被填充物占用。根据本专利技术的一种实施例,在此被称为“SunOracleExalogic”或者“Exalogic”,该系统是用于托管中间件或应用服务器软件,诸如Oracle中间件SW套件或Weblogic,的一种易于部署的解决方案。如本文所描述的,根据一种实施例,该系统是“盒子内的网格”,包括一个或多个服务器、存储单元、用于存储联网的一个IB构架,以及托管中间件应用所需的所有其它组件。通过利用例如真正应用集群和Exalogic开放存储充分利用大规模并行网格体系架构,可以为所有类型的中间件应用交付显著的性能。该系统利用线性I/O可缩放性交付提高的性能、使用和管理都很简单,并且交付任务关键的可用性和可靠性。根据本专利技术的一种实施例,Tuxedo是启用高性能、分布式商业应用的构造、执行和管理的一组软件模块,并且已经被多种多层应用开发工具用作事务中间件。Tuxedo是可以用于在分布式计算环境中管理分布式事务处理的中间件平台。它是一个经过证明的平台,用于解锁企业传统应用并把它们扩展到面向服务的体系架构,同时交付不受限制的可缩放性与基于标准的互操作性。根据本专利技术的一种实施例,事务中间件系统,诸如Tuxedo系统,可以利用具有多个处理器的快速机器,诸如Exalogic中间件机器,以及高性能网络连接,诸如Infiniband(IB)网络。根据本专利技术的一种实施例,事务系统可以利用由集群数据库提供的分布式存储和高可用性(HA)能力来支持容易且可行的灾难恢复。把事务记录持久化到集群数据库中根据本专利技术的一种实施例,事务应用服务器可以在事务中间件机器环境中把事务记录,诸如事务日志信息,持久化到集群数据库中,以增强用于事务的高可用性(HA)能力。集群数据库可以把这种事务信息从本地站点复制到远端站点,以便为事务中间件机器环境提供HA能力。图1示出了根据本专利技术一种实施例的支持灾难恢复的事务中间件机器环境的图示。如图1中所示,一个或多个事务应用服务器(服务器A103和服务器D106)可以把与事务(事务A121)关联的事务信息持久化到集群数据库中,例如位于本地站点A101的数据库服务器A107。集群数据库111可以把事务日志信息复制到位于远端站点B102的远端数据库服务器B108。如图1中所示,当灾难攻击本地站点A时,位于远端站点B的事务应用服务器B104可以从远端数据库中检取数据库服务器B中用于事务A122的持久化的事务日志信息并且没有延迟地立即完成该事务。相反,如果用于事务D124的事务日志只写到位于本地站点A的平面文件D111中,则系统可能要花更长的时间执行灾难恢复和完成事务。根据本专利技术的一种实施例,当事务系统被激活时,事务系统可以打开一个数据库连接并且把记录写到数据库而不是写到文件。事务系统可以配置为把事务日志信息写到该应用当前在使用的数据库中,以便节约并发数据库连接的个数。此外,抽象的事务文件操作接口可以用于在文件系统,诸如分布式文件系统112,中存储事务日志信息。分布式文件系统可以把存储在本地站点A的文件A109中的事务日志信息同步到位于远端站点C103的文件C110。类似地,当灾难攻击本地站点A时,位于远端站点C的事务应用服务器C105可以检取文件C中所存储的用于事务A123的事务日志信息并且完成该事务。在文件系统中存储事务日志信息对于灾难恢复解决方案可能不方便,因为平面文件中的事务日志信息必须利用不可避免的时间窗在恢复站点上同步。此外,对分布式文件系统的支持会是有限的。根据本专利技术的一种实施例,通过在集群数据库中持久化事务日志信息,系统可以采用底层数据库系统固有的复制及其它HA方面。系统还可以增强灾难恢复场景的处理,尤其是在诸如跨站点恢复的场景下。而且,对分布式文件系统解决方案的需求也可以缓解。系统还减少了对用户的复杂性,因为,与诸如NFS等的分布式文件系统相比,数据库的配置通常不本文档来自技高网...
用于在事务中间件机器环境中持久化事务记录的系统与方法

【技术保护点】
一种用于在事务中间件机器环境中支持灾难恢复的系统,包括:与事务关联的一个或多个事务应用服务器,其中所述一个或多个事务应用服务器操作成把与该事务关联的事务日志信息持久化到位于本地站点的、与所述一个或多个事务应用服务器连接的数据库,及其中该数据库操作成把持久化的事务日志信息从位于本地站点的本地数据库服务器复制到位于远端站点的远端数据库服务器,而且其中,在灾难使本地站点不能工作时,远端数据库允许位于远端站点的不同事务应用服务器恢复持久化的事务日志信息并且完成该事务。

【技术特征摘要】
【国外来华专利技术】2011.09.29 US 61/541,052;2012.03.07 US 13/414,6071.一种用于在事务中间件机器环境中支持灾难恢复的方法,包括:提供能够被多个应用服务器访问的集群数据库,其中,所述集群数据库跨分布式的多个数据库服务器提供协同的数据集,其中,所述集群数据库操作为跨所述多个数据库服务器复制所述数据集;提供从每个应用服务器到所述集群数据库的连接,借助所述连接,在所述应用服务器上操作的应用能够经由所述连接从所述数据集读取数据以用于开始事务,处理所述数据,以及经由所述连接将处理后的数据写入所述数据集以用于完成事务;通过为所述多个应用服务器的每个应用服务器定义包含在该应用服务器上正在处理的事务的多个日志记录的事务日志来定义多个不同的事务日志;经由从每个应用服务器到所述集群数据库的所述连接将所述多个不同的事务日志持久化到所述集群数据库;通过使用所述集群数据库来生成多个复制的不同的事务日志而跨所述多个数据库服务器复制所述多个不同的事务日志的每一个不同的事务日志,其中所述多个不同的事务日志中的每一个不同的事务日志与存储在远离相关联的该不同的事务日志的站点上的至少一个复制的不同事务日志相关联;以及在灾难使具有所述多个不同的事务日志中的第一事务日志的第一应用服务器不能工作时,其中第一事务日志与存储在远离第一事务日志的站点处的所述多个复制的不同的事务日志中的第一复制的事务日志相关联,允许远离第一应用服务器的站点处的第二应用服务器从所述多个数据库服务器之一恢复所述多个复制的不同的事务日志中的第一复制的事务日志并且完成第一复制的事务日志中所识别的事务。2.如权利要求1所述的方法,还包括在通用设备列表中定义所述多个不同的事务日志,通用设备列表包括事务文件系统的地图。3.如权利要求1所述的方法,还包括在通用设备列表中定义所述多个不同的事务日志,其中,通用设备列表包括事务文件系统的地图,通用设备列表在应用引导时被加载到共享内存中。4.如权利要求1所述的方法,还包括提供应用编程接口(API)以用于将每个应用服务器的事务日志经由从每个应用服务器到所述集群数据库的所述连接持久化到所述集群数据库。5.如权利要求1所述的方法,还包括提供应用编程接口(API)以用于将每个应用服务器的事务日志经由从每个应用服务器到所述集群数据库的连接持久化到所述集群数据库以及提供调用所述应用编程接口的配置文件。6.如权利要求1所述的方法,其中,经由所述连接持久化所述事务日志避免为了持久化所述事务日志而创建额外的并发的数据库连接。7.如权利要求1所述的方法,其中,每个事务是两阶段事务。8.如权利要求7所述的方法,还包括允许在成功提交两阶段事务的第一阶段之后事务日志信息包含事务管理器的持久化状态。9.如权利要求1所述的方法,其中还包括提供建立所述连接的事务处理监视器(TPM)。10.一种用于在事务中间件机器环境中支持灾难恢复的系统,包括:能够被多个应用服务器访问的集群数据库,其中,所述集群数据库跨分布式的多个数据库服务器提供协同的数据集,其中,所述集群数据库操作为跨所述多个数据库服务器复制所述数据集;从每个应用服务器到所述集群数据库的连接,借助所述连接,在所述应用服务器上操作的应用能够经由所述连接从所述数据集读取数据以用于开始事务,处理所述数据,以及经由所述连接将处理后的数据写入所述数据集以用于完成事务;多个不同的事务日志,为每个具体的应用服务器包括单独的事务日志,该单独的事务日志包含在该具体的应用服务器上正在处理的事务的多个日志记录;其中,每个具体的应用服务器经由从该具体的应用服务器到所述集群数据库的所述连接将与该具体的应用服务器相关联的单独的事务日志持久化到所述集群数据库;其中,所述集群数据库还操作为通过使用所述集群数据库来生成多个复制的不同的事务日志而跨所述多个数据库服务器复制所述多个不同的事务日志的每一个不同的事务日志,其中所述多个不同的事务日志中的每一个不同的事务日志与存储在远离相关联的该不同的事务日志的站点上的至少一个复制的不同事务日志相关联;以及其中,在灾难使具有第一单独的事务日志并且与存储在远离第一单独的事务日志的站点处的第一单独的复制的事务日志相关联的第一具体的应用服务器不能工作时,远离第一具体的应用服务器的站点处的第二应用服务器被...

【专利技术属性】
技术研发人员:T·里托李向东吕先正
申请(专利权)人:甲骨文国际公司
类型:发明
国别省市:美国;US

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

1