【技术实现步骤摘要】
适应低质量通信链路的高可用软件系统内数据同步方法
本专利技术涉及适应低质量通信链路的高可用软件系统内数据同步方法。
技术介绍
着信息化程度的不断提高,企业对信息系统的依赖程度越来越高,业务系统的连续性和灾难保护的重要性也越来越突出。对某个软件系统而言,为提高该软件系统的高可用特性,一般采用多实例的部署方式,即在多个地点部署该软件系统实例,多个实例之间同步状态数据,主用实例故障时其他实例接替提供服务。在该模式下,多实例间的数同步是否完整成为了实例间接替能否成功的关键。当前,多实例间的同步方式包括以下几种:1、基于存储设备之间的同步或异步同步。该方式通过存储设备捕捉软件系统的IO情况,将每次写数据通过存储之间的链路实时同步至备用软件系统使用的存储。使用该方式,要求存储之间有高速的网络带宽,并且若采用实时同步,还对存储间的高速网络通信时延有很高的要求。该方法无法适应低带宽、高时延、多抖动的网络环境。2、基于数据库间的同步或异步同步。该方式通过数据库之间的同步工具实现两个数据库之间的数据同步或异步备份,该方式同样需要对每个数据库的写操作进行同步,对通信网络带宽要求较高,若采用实时方式,还需要有很低的通信时延。该方法无法适应低带宽、高时延、多抖动的网络环境。3、基于内存同步的同步。内存同步主要采用同步方式,同步多个实例内的内存数据,对网络实时性和带宽要求非常高,无法适应低带宽、高时延、多抖动的网络环境4、上述几种组合同步。多种备份方式组合的使用,可提高多实例软件系统间的高可用能力,但无法
【技术保护点】
1.适应低质量通信链路的高可用软件系统内数据同步方法,其特征在于,所述软件系统采用双实例方式,其中一个为主用软件系统,另一个为备用软件系统,分别部署于两个不同的数据中心,所述主用软件系统在第一数据中心,所述备用软件系统在第二数据中心;/n所述主用软件系统和备用软件系统之间均设置影子系统,主用软件系统对应的是第一影子系统,备用软件系统对应的是第二影子系统;/n所述主用软件系统对应的第一影子系统监视主用软件系统,获取主用软件系统处理一个任务结束后最终变化数据集,打上时间信息,即时戳信息,并发送至备用软件系统对应的第二影子系统;/n所述备用软件系统对应的第二影子系统接收第一影子系统的数据,若因网络抖动导致数据包不正常,则重传,直到完全正确接收第一影子系统传递而来的一个任务对应的最终变化数据集,然后对比时戳信息,依照最新的数据修改备用软件系统的对应的数据信息,历史信息保留;若备用软件系统运行不正常,可自动回滚数据。/n
【技术特征摘要】
1.适应低质量通信链路的高可用软件系统内数据同步方法,其特征在于,所述软件系统采用双实例方式,其中一个为主用软件系统,另一个为备用软件系统,分别部署于两个不同的数据中心,所述主用软件系统在第一数据中心,所述备用软件系统在第二数据中心;
所述主用软件系统和备用软件系统之间均设置影子系统,主用软件系统对应的是第一影子系统,备用软件系统对应的是第二影子系统;
所述主用软件系统对应的第一影子系统监视主用软件系统,获取主用软件系统处理一个任务结束后最终变化数据集,打上时间信息,即时戳信息,并发送至备用软件系统对应的第二影子系统;
所述备用软件系统对应的第二影子系统接收第一影子系统的数据,若因网络抖动导致数据包不正常,则重传,直到完全正确接收第一影子系统传递而来的一个任务对应的最终变化数据集,然后对比时戳信息,依照最新的数据修改备用软件系统的对应的数据信息,历史信息保留;若备用软件系统运行不正常,可自动回滚数据。
2.根据权利要求1所述的方法,其特征在于,所述主用软件系统在线承担任务,第一影子系统以任务为单位,实时同步主用软件系统空间中的内存数据、数据库数据和磁盘数据至第一影子系统的临时空间;当所述任务处理完毕,影子系统在临时空间中,将所述任务涉及的数据进行归并、去重,形成任务最终变化数据,同时打上时戳信息,将任务最终变化数据通过低质量通信链路发送至备用软件系统;
所述第二影子系统用于接收第一影子系统发送来的任务最终变化数据,第二影子系统检测接收的数据的完整性,当确认已完整接收任务最终变化数据后,对比时戳信息,依照最新时戳信息在备用软件系统的影子系统的临时空间中恢复数据,包括内存数据、数据库数据和磁盘数据,数据恢复完毕后,将恢复的数据发送至备用软件系统空间,实现实例间的数据同步,若同步后运行不成功,则根据时戳信息,回滚至最近运行状态。
3.根据权利要求2所述的方法,其特征在于,所述第一影子系统依托于第一影子空间运行,第二影子系统依托于第二影子空间运行,所述第一影子空间和第二影子空间,相对于主用软件系统和备用软件系统所依托的运行资源是独立的,占有独立的软件进程,有独立的CPU运行空间、内存空间和磁盘空间。
4.根据权利要求3所述的方法,其特征在于,所述主用软件系统接到任务后,开始执行任务,具体执行如下步骤:
步骤a1,任务调度,为所述任务分配任务ID,所述任务ID贯穿任务执行整个过程,执行过程中的内存数据变化、数据库数据变化、磁盘数据变化均与所述任务ID关联;
步骤a2,执行任务,按照主用软件系统功能设计逻辑,执行相关任务;
步骤a3,判断是否存在内存变化,若有内存变化,则将变化内存同步至第一影子系统的临时内存空间,再执行步骤a4;若无内存变化,直接执行步骤a4;
步骤a4,判断是否存在数据库变化,如有变化,则将变化数据库数据同步至影子系统的临时数据库空间,数据库空间存于内...
【专利技术属性】
技术研发人员:谢荣平,黄太奇,卢德兼,朱仲马,杨柳静,余臻,周颖,耿嘉,何锡点,王晟安,
申请(专利权)人:中国电子科技集团公司第二十八研究所,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。