CN109194720A - 主备机数据同步方法、装置和计算机设备 - Google Patents

主备机数据同步方法、装置和计算机设备 Download PDF

Info

Publication number
CN109194720A
CN109194720A CN201810929001.2A CN201810929001A CN109194720A CN 109194720 A CN109194720 A CN 109194720A CN 201810929001 A CN201810929001 A CN 201810929001A CN 109194720 A CN109194720 A CN 109194720A
Authority
CN
China
Prior art keywords
business datum
serializing
standby
data
host
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.)
Pending
Application number
CN201810929001.2A
Other languages
English (en)
Inventor
覃炳达
徐胤
李高明
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.)
Comba Network Systems Co Ltd
Original Assignee
Comba Telecom Technology Guangzhou Ltd
Comba Telecom Systems China Ltd
Comba Telecom Systems Guangzhou Co Ltd
Tianjin Comba Telecom Systems Co Ltd
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 Comba Telecom Technology Guangzhou Ltd, Comba Telecom Systems China Ltd, Comba Telecom Systems Guangzhou Co Ltd, Tianjin Comba Telecom Systems Co Ltd filed Critical Comba Telecom Technology Guangzhou Ltd
Priority to CN201810929001.2A priority Critical patent/CN109194720A/zh
Publication of CN109194720A publication Critical patent/CN109194720A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及一种主备机数据同步方法,包括:按第一预设格式对内存块存储的业务数据进行序列化;按第二预设格式将序列化后的业务数据进行分拆序列化,得到分拆序列化后的各传输数据包;将各传输数据包发送到已启用的备机;其中,各传输数据包用于指示备机进行对应的反序列化后,得到业务数据。通过主机先将内存块上的业务数据,按照第一预设格式完成序列化后,再通过第二预设格式进行分拆序列化,得到对应于业务数据的各个传输数据包,再发送给备机。备机接收各传输数据包后进行对应的反序列化,得到业务数据,完成主备机间的数据同步。上述主备机数据同步过程中,无需中间服务结点参与,实现过程大幅简化,有效提高主备机数据同步效率。

Description

主备机数据同步方法、装置和计算机设备
技术领域
本申请涉及通信数据处理技术领域,特别是涉及一种主备机数据同步方法、装置和计算机设备。
背景技术
随着人们对通信业务的各方面需求不断提升,各种业务系统和信息系统等软件系统,常需要做主备机数据同步,确保业务数据的正常传输,以及提高系统性能。对于主备机数据备份,传统的方式是通过中心服务结点进行数据统一备份。然后,在需要进行主备机切换时,由中心服务结点再将数据恢复到相应的备机系统中。或者是对于不涉及数据业务的系统中,通过数据库统一备份数据,备机恢复时通过数据库加载相应数据进行恢复。然而,在实现本发明的过程中,发明人发现传统的主备系统数据同步方式中至少存在着同步效率较低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够大幅提高同步效率的主备机数据同步方法,一种主备机数据同步装置以及一种计算机设备。
为实现上述目的,本发明实施例采用以下技术方案:
一方面,本发明实施例提供一种主备机数据同步方法,包括:
按第一预设格式对内存块存储的业务数据进行序列化;
按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到分拆序列化后的各传输数据包;
将各所述传输数据包发送到已启用的备机;其中,各所述传输数据包用于指示所述备机进行对应的反序列化后,得到所述业务数据。
在其中一个实施例中,所述业务数据包括全量同步数据;所述按第一预设格式对内存块存储的业务数据进行序列化的步骤前,还包括:
接收所述备机启用时发送的全量同步请求。
在其中一个实施例中,所述业务数据包括增量同步数据;所述方法还包括:
缓存所述增量同步数据到预设内存;
若所述增量同步数据占用所述预设内存的空间达到内存阈值,则跳转至所述按第一预设格式对内存块存储的业务数据进行序列化的步骤。
在其中一个实施例中,所述方法还包括:
若预设定时器计时达到阈值,则跳转至所述按第一预设格式对内存块存储的业务数据进行序列化的步骤;其中,所述预设定时器用于对所述增量同步数据进行缓存计时。
在其中一个实施例中,所述按第一预设格式对内存块存储的业务数据进行序列化的步骤,包括:
根据预设的保留字节、版本号、序列化ID、业务类型ID、操作类型ID、内存长度和备份数据,对所述内存块存储的所述业务数据进行序列化。
在其中一个实施例中,所述按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到分拆序列化后的各传输数据包的步骤,包括:
根据预设的保留字节、版本号、模块ID、序列化ID、拆包总数、拆包序列号、包长度和包内容,对序列化后的所述业务数据进行分拆序列化,得到分拆序列化后的各所述传输数据包。
另一方面,本发明实施例还提供一种主备机数据同步方法,包括:
接收主机发送的各传输数据包;其中,各所述传输数据包为所述主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到的各所述传输数据包;
对各所述传输数据包进行对应的反序列化,得到各所述传输数据包对应的所述业务数据。
又一方面,本发明实施例还提供一种主备机数据同步装置,包括:
第一序列化模块,用于按第一预设格式对内存块存储的业务数据进行序列化;
第二序列化模块,用于按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到序列化后的各传输数据包;
数据包发送模块,用于将各所述传输数据包发送到已启用的备机;其中,各所述传输数据包用于指示所述备机进行对应的反序列化后,得到所述业务数据。
再一方面,本发明实施例还提供一种主备机数据同步装置,包括:
数据接收模块,用于接收主机发送的各传输数据包;其中,各所述传输数据包为所述主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到的各所述传输数据包;
反序列化模块,用于对各所述传输数据包进行对应的反序列化,得到各所述传输数据包对应的所述业务数据。
再一方面,本发明实施例还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述主备机数据同步方法的步骤。
再一方面,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述主备机数据同步方法的步骤。
上述技术方案中的一个技术方案具有如下优点和有益效果:
上述主备机数据同步方法,通过主机先将内存块上需要发送到备机以完成数据同步的业务数据,按照第一预设格式完成序列化之后,再通过第二预设格式进行分拆序列化,得到适于传输的各个传输数据包。从而,主机将对应于业务数据的各个传输数据包发送给备机,以使备机接收各传输数据包后进行对应的反序列化,得到业务数据,完成主备机间的数据同步。上述主备机数据同步过程中,无需中间服务结点参与,实现过程大幅简化,有效提高主备机数据同步效率。
附图说明
图1为一个实施例中主备机数据同步方法的应用环境示意图;
图2为一个实施例中主备机数据同步方法的流程示意图;
图3为另一个实施例中主备机数据同步方法的流程示意图;
图4为又一个实施例中主备机数据同步方法的流程示意图;
图5为一个实施例中主备机数据同步装置的结构框图;
图6为再一个实施例中主备机数据同步方法的流程示意图;
图7为一个实施例中主备机数据同步方法进一步的流程示意图;
图8为另一个实施例中主备机数据同步装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的主备机数据同步方法,可以应用于如图1所示的应用环境中。其中,主机102可以通过进程或者网络与备机104进行通信。当主机102和备机104建立好通信链路以传输业务数据时,主机102先按第一预设格式对自身维护的内存块中存储的业务数据进行序列化。进而,主机102按第二预设格式将序列化后的业务数据进行分拆序列化,得到序列化后的各传输数据包后,通过通信链路将各传输数据包发送到前述已启用的备机104。从而,备机104可以将接收到的各传输数据包整合后,进行与上述第一预设格式的序列化对应的反序列化后,得到主机102上同步过来的业务数据。其中,主机102可以是各种通信设备中的主处理单元,例如网关、交换机或者服务器中的主处理器,也可以是通信设备所在的业务系统或信息系统中的主处理单元。备机104可以是各种通信设备中的备用处理单元,例如网关、交换机或者服务器中的备用处理器,也可以是通信设备所在业务系统或备用信息系统中的备用处理单元,用于在接收主机102同步过来的业务数据,或完成与主机102的数据同步后,接替主机102继续执行业务处理。
请参阅图2,在一个实施例中,提供了一种主备机数据同步方法,以应用于如图1所示的应用环境中为例进行说明。主备机数据同步方法包括如下步骤S12至S16:
S12,按第一预设格式对内存块存储的业务数据进行序列化。
其中,第一预设格式为预先根据具体的序列化方式设定的内存块序列化格式,用于序列化内存块中存储的业务数据。内存块为主机102向备机104发起数据同步时,建立的处理进程对应分配到的内存块,具体数量可以根据待同步的业务数据的数据量大小进行确定,可以是一个也可以多个。
具体的,主机102可以在业务层上对需要同步到备机104的业务数据,存储在处理本次主备机主备机数据同步的处理进程所维护的内存块中。主机102按照第一预设格式,通过处理进程对业务数据进行序列化,以便备机104在业务层上进行数据接收过程时,通过对应于前述序列化的反序列化过程得到该业务数据。
S14,按第二预设格式将序列化后的业务数据进行分拆序列化,得到分拆序列化后的各传输数据包。
其中,第二预设格式为预先根据主备机之间数据传输所应用的协议,设定的传输数据包序列化格式,用于拆分内存块中的业务数据成适于在处理进程中传输的系列传输数据包。
具体的,主机102可以在业务层上对序列化后的业务数据,按照第二预设格式进行分拆序列化,通过处理进程将业务数据拆分成适于在处理进程中传输的多个序列化的传输数据包,以便下发到传输层上进行数据包发送。
S16,将各传输数据包发送到已启用的备机。其中,各传输数据包用于指示备机进行对应的反序列化后,得到业务数据。
其中,已启用的备机104是已与主机102建立数据同步的通信链路的备机104,例如已向主机102发送数据同步请求,完成数据同步的通信链路建立的备机104,或者已处于数据同步过程中的备机104。本领域技术人员可以理解,反序列化也即序列化的逆过程,具体过程由序列化的过程确定。
具体地,主机102的传输层在收到业务层下发的已拆分序列化好的各个传输数据包后,可以通过数据同步的通信链路,由处理进程处理发送到备机104的对应传输层。从而,备机104的传输层将接收的各个传输数据包发送给位于上层的业务层。业务层从而可以将各传输数据包整合后,进行对应的反序列化得到主机102同步过来的业务数据。需要说明的是,本领域技术人员可以理解上述的处理进程是主机102中处理主备机数据同步的主进程,而非唯一进程。
上述主备机数据同步方法,通过主机102先将内存块上需要发送到备机104以完成数据同步的业务数据,按照第一预设格式完成序列化之后,再通过第二预设格式进行分拆序列化,得到适于传输的各个传输数据包。从而,主机102将对应于业务数据的各个传输数据包发送给备机104,以使备机104接收各传输数据包后进行对应的反序列化,得到业务数据,完成主备机数据同步。上述主备机数据同步过程中,无需中间服务结点参与,实现过程大幅简化,有效提高主备机数据同步效率。
请参阅图3,在一个实施例中,业务数据包括全量同步数据。步骤S12前,还可以包括步骤S11:
S11,接收备机启用时发送的全量同步请求。其中,全量同步请求为备机104刚起来时,向主机102发送的全量数据同步请求。
其中,全量同步数据为到主机102接收到备机104的数据同步请求时刻,主机102上需同步到备机104上的全部数据。可以理解,上述实施例中,备机可以在起来(也即启用)时即发送全量同步请求,以便主机同步上述的步骤S12至S16将全量同步数据发送到备机104。也可以在主备机同时运行等中间过程中,例如主备机间数据异常失步等故障状态出现时,备机104主动向主机102发送全量同步请求或者主机102主动向备机104发起全量同步数据的同步。在本实施了中,具体的,主机102接收到备机104在启用时发送的全量同步请求后,向备机104发起全量同步数据的数据同步,通过上述的步骤S12至S16,将主机102收到备机104起来时发送的全量同步请求为时间点的所有需要同步到备机104的备份数据,同步到备机104。
通过上述的步骤S11,可以在备机104启用时,主机102即可以根据备机104发送的全量数据同步请求,通过处理进程将全量同步数据同步到备机104,快速实现主备机的全部数据同步。
在一个实施例中,对于步骤S12,具体可以包括:根据预设的保留字节、版本号、序列化ID、业务类型ID、操作类型ID、内存长度和备份数据,对内存块存储的业务数据进行序列化。
可以理解,在本领域中,序列化和反序列化的方法多种多样,确定序列化方法,同时也确定了对应的反序列化方法。具体的序列化方法可以根据数据接收方的数据接收需要以及系统结构来选定或调整,只要能够便于准确完成数据反序列化即可。
可选的,本实施了中采用的序列化方法可以但不限于根据预先设定的保留字节、版本号、序列化ID、业务类型ID、操作类型ID、内存长度和备份数据等参数,来对业务数据进行序列化。其中,保留字节可用于拓展数据的序列化格式。版本号可用作不同数据版本兼容号。序列化ID为业务层应用需要在备机104中将接收数据还原到相应业务数据的结构中的关键标识,序列化ID在进程中唯一存在。例如业务数据的处理进程存在两个需要同步备份的map内存,分为记为m_mapA和m_mapB,里面相应储存着不同的业务数据。则在全量数据同步过程中,序列化m_mapA和m_mapB的时候,需分别分配处理进程内唯一的一个ID值与之相对应,如ID_A和ID_B。那么在备机收到相应反序列化后的数据时,可通过ID_A和ID_B知道这部分数据应该分别恢复给m_mapA和m_mapB。
业务类型可用于区分全量同步数据与增量同步数据。操作类型ID可用于标识此部分数据为增加数据、删除数据或修订数据等操作类型。例如收到的数据为增加数据时,备机104的业务层应用只需要增加相应的数据即可保持与主机102数据一致。收到的数据为删除数据时,备机104的业务层应用需要将相应内存对应的数据从业务数据中删除才能保持与主机102数据一致。收到的数据为修订数据时,备机104的业务层应用需要将对应的数据进行修订才能保持与主机102数据一致。内存长度用于表示备份数据(也即内存块中业务数据)的实际长度。备份数据为实际业务数据的内容。其长度由上述内存长度决定。
通过上述的具体的第一预设格式的序列化处理步骤,可以使主机102快速完成对业务数据的序列化,且便于备机104快速完成反序列化,提高主备机数据通的效率。
在一个实施例中,对于上述的步骤S14,具体可以包括:
根据预设的保留字节、版本号、模块ID、序列化ID、拆包总数、拆包序列号、包长度和包内容,对序列化后的业务数据进行分拆序列化,得到分拆序列化后的各传输数据包。
可选的,本实施了中,对业务数据进行拆包时,采用的序列化方法可以是但不限于根据预设的保留字节、版本号、模块ID、序列化ID、拆包总数、拆包序列号、包长度和包内容,来对业务数据进行分拆序列化,得到各个传输数据包。
其中,保留字节用于后期拆包扩展或者用户特定拆包需要时,扩展对应的拆包序列化格式。版本号用于数据版本对比兼容。模块ID用于标识业务模块,在处理进程内为唯一标识,在主备机数据同步时,能将接收的数据准确送回给指定的业务模块。序列化ID用于区分接收数据的归属。拆包总数用于标识业务数据总共拆分成的传输数据包的总个数,可用于备机104的传输层检测是否已经接收完毕,也可以作为数据包重传(如非可靠的进程通信时)的依据之一。拆包序列号为当前传输数据包属于业务数据被拆分排序后的第几个数据包,用于传输层检测数据包是否已经完全接收,也可以用于传输数据包的重传依据之一(如非可靠的进程通信时)。包长度指示的是当前传输数据包里面包含的被拆分业务数据的长度。包内容为当前传输数据包里面包含的被拆分业务数据的实际内容(如拆分后的某块业务数据)。
通过上述的具体的第二预设格式的分拆序列化,可以使主机102快速将对业务数据的拆分成序列化的传输数据包,且便于备机104快速完成数据整合与反序列化,提高主备机数据通的效率。
请参阅图4,在一个实施例中,业务数据包括增量同步数据。上述的主备机数据同步方法还可以包括如下步骤S18和S20:
S18,缓存增量同步数据到预设内存。
其中,增量同步数据为主机102在将全量同步数据同步到备机104的过程中,以及同步完成之后,需备份并同步到备机104上的增量数据。预设内存是为了缓存增量同步数据而预先分配的底层内存。具体的,主机102在全量同步数据完成向备机104的同步后,可以先将产生的增量同步数据缓存到预设内存中。
S20,若增量同步数据占用预设内存的空间达到内存阈值,则跳转至步骤S12。
其中,内存阈值为预设内存的最大存储容量。具体的,当增量同步数据在预设内存中占用预设内存的空间达到内存阈值,也即缓存已满时,主机102将通过处理进程跳转执行上述的步骤S12,以通过步骤S12至S16将缓存满的增量同步数据发送到备机104。如此,通过上述的步骤S18和S20,可以将增量同步数据延时发送到备机104,降低网络繁忙度,进一步提高主备机数据通信效率。
在一个实施例中,上述的主备机数据同步方法还包括如下步骤:
若预设定时器计时达到阈值,则跳转至步骤S12。
其中,预设定时器为在主机102上为增量同步数据的缓存设定的定时器,用于定时触发主机102将增量同步数据发送到备机104。具体的,主机102除了在预设定时器计时未达到阈值时,若增量同步数据在预设内存中占用预设内存的空间达到内存阈值,主机102也将通过处理进程跳转执行上述的步骤S12,以通过步骤S12至S16将缓存满的增量同步数据发送到备机104。当预设定时器计时达到阈值,则主机102也将通过处理进程跳转执行上述的步骤S12,以通过步骤S12至S16将缓存满的增量同步数据发送到备机104。如此,通过上述的定时触发同步增量同步数据的步骤,也可以将增量同步数据延时发送到备机104,降低网络繁忙度,进一步提高主备机数据通信效率。
请参阅图5,在一个实施例中,提供了一种主备机数据同步装置100,包括第一序列化模块12、第二序列化模块14和数据包发送模块16。其中:第一序列化模块12用于按第一预设格式对内存块存储的业务数据进行序列化。第二序列化模块14用于按第二预设格式将序列化后的业务数据进行分拆序列化,得到序列化后的各传输数据包。数据包发送模块16用于将各传输数据包发送到已启用的备机;其中,各传输数据包用于指示备机进行对应的反序列化后,得到业务数据。
上述的主备机数据同步装置100,通过在主机102上的第一序列化模块12先将内存块上需要发送到备机104以完成数据同步的业务数据,按照第一预设格式完成序列化之后,再通过第二序列化模块14按照第二预设格式进行分拆序列化,得到适于传输的各个传输数据包。从而,数据包发送模块16将对应于业务数据的各个传输数据包发送给备机104,以使备机104接收各传输数据包后进行对应的反序列化,得到业务数据,完成主备机数据同步。上述主备机数据同步过程中,无需中间服务结点参与,实现过程大幅简化,有效提高主备机数据同步效率。
在一个实施例中,主备机数据同步装置100还可以包括请求接收模块。请求接收模块用于接收备机104启用时发送的全量同步请求。
在一个实施例中,主备机数据同步装置100还可以包括增量缓存模块和第一增量同步触发模块。其中,增量缓存模块用于获取并缓存增量同步数据到预设内存。第一增量同步触发模块用于在增量同步数据占用预设内存的空间达到内存阈值时,触发处理进程跳转至步骤S12,以进行增添同步数据的同步。
在一个实施例中,主备机数据同步装置100还可以包括第二增量同步触发模块。其中,第二增量同步触发模块用于在预设定时器计时达到阈值,则触发处理进程跳转至步骤S12,以进行增添同步数据的同步。
关于主备机数据同步装置100的具体限定可以参见上文中对于主备机数据同步方法的限定,在此不再赘述。上述主备机数据同步装置100中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
请参阅图6,在一个实施例中,还提供一种主备机数据同步方法,包括如下步骤S21和S23:
S21,接收主机发送的各传输数据包。其中,各传输数据包为主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的业务数据进行分拆序列化,得到的各传输数据包。
具体的,主备机数据同步过程中,备机104传输层接收主机102传输层发送过来的已序列化后的各个传输数据包,并发送给位于上层的备机104业务层。主机102对业务数据进行的序列化拆包,以得到各传输数据包的具体过程可以参见各上述实施例中主备机数据同步方法的步骤,此处不再展开赘述。
S23,对各传输数据包进行对应的反序列化,得到各传输数据包对应的业务数据。具体的,备机104业务层收到传输层发送的各传输数据包后,可以将各传输数据包整合成完整的业务数据对应的序列化传输数据包。进而备机业务层104进行对应的反序列化得到主机102同步过来的业务数据。
上述主备机数据同步方法,通过主机102先将内存块上需要发送到备机104以完成数据同步的业务数据,按照第一预设格式完成序列化之后,再通过第二预设格式进行分拆序列化,得到适于传输的各个传输数据包。从而,主机102将对应于业务数据的各个传输数据包发送给备机104,以使备机104接收各传输数据包后进行对应的反序列化,得到业务数据,完成主备机数据同步。上述主备机数据同步过程中,无需中间服务结点参与,实现过程大幅简化,有效提高主备机数据同步效率。
在一个实施例中,业务数据包括全量同步数据或增量同步数据。可以理解,前述主备机数据同步方法中,备机104接收到的业务数据可以是全量同步数据,也可以是增量同步数据。具体限定可以参见各上述实施例中主备机数据同步方法的步骤中相应实施例的限定,此处不再展开赘述。
通过上述的全量同步数据或增量同步数据,可以在主备机数据同步过程,灵活设置数据同步的类型,利用全量同步数据进行数据同步,可以提高数据同步的全面性和准确性。利用增量同步数据进行数据同步,可以提高数据同步的速度,减少系统开销。先后利用全量同步数据进行数据同步和增量同步数据进行数据同步,可以进一步提高数据同步可靠性和效率。
请参阅图7,在一个实施例中,前述主备机数据同步方法还包括如下步骤S19:
S19,向主机发送全量同步请求。其中,全量同步请求为备机104刚起来时,向主机102发送的全量数据同步请求,也可以是主备机同时运行过程中,例如备机104或主机102在对数据进程审计过程中,发现主备机间数据异常失步等故障状态时,备机104主动向主机102发送全量同步请求。具体的,备机104可以在启用时即向主机102发送全量同步请求,也可以在主备机同时运行过程中,任一时间点上主动向主机102发送全量同步请求,以通知主机102向备机104进行全量同步数据的数据同步。通过上述的步骤S19,备机104可以在启用时或主备机同时运行过程中,任一时间点上主动向主机102发送全量同步请求,以使主机102根据备机104发送的全量数据同步请求,通过处理进程将全量同步数据同步到备机104,快速实现主备机的全部数据同步。
应该理解的是,虽然图2至4,以及图6至图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至4,以及图6至图7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
请参阅图8,在一个实施例中,提供了一种主备机数据同步装置200,包括数据接收模块22和反序列化模块24。其中:数据接收模块22用于接收主机102发送的各传输数据包;其中,各传输数据包为主机102按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的业务数据进行分拆序列化,得到的各传输数据包。反序列化模块24用于对各传输数据包进行对应的反序列化,得到各传输数据包对应的业务数据。
上述的主备机数据同步装置200,通过在备机104的数据接收模块22接收主机102上序列化后的各传输数据包,进而由反序列化模块24对各传输数据包后进行对应的反序列化,得到业务数据,完成主备机数据同步。上述主备机数据同步过程中,无需中间服务结点参与,实现过程大幅简化,有效提高主备机数据同步效率。
在一个实施例中,主备机数据同步装置200还可以包括请求发送模块。请求发送模块用于向主机发送全量同步请求。
关于主备机数据同步装置200的具体限定可以参见上文中对于主备机数据同步方法的限定,在此不再赘述。上述主备机数据同步装置200中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是各种类型的通信设备,例如网关、交换机、服务器或基站等,也可以是两个或多个通信设备组成的通信系统。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端或其他通信设备通过网络连接通信。该计算机程序被处理器执行时以实现一种主备机数据同步方法。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:按第一预设格式对内存块存储的业务数据进行序列化;按第二预设格式将序列化后的业务数据进行分拆序列化,得到序列化后的各传输数据包;将各传输数据包发送到已启用的备机;其中,各传输数据包用于指示备机进行对应的反序列化后,得到业务数据。获取实现以下步骤:接收主机发送的各传输数据包;其中,各传输数据包为主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的业务数据进行分拆序列化,得到的各传输数据包;对各传输数据包进行对应的反序列化,得到各传输数据包对应的业务数据。
在一个实施例中,处理器执行计算机程序时还实现上述各实施例中的主备机数据同步方法的增加步骤或子步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如下步骤:按第一预设格式对内存块存储的业务数据进行序列化;按第二预设格式将序列化后的业务数据进行分拆序列化,得到序列化后的各传输数据包;将各传输数据包发送到已启用的备机;其中,各传输数据包用于指示备机进行对应的反序列化后,得到业务数据。获取实现以下步骤:接收主机发送的各传输数据包;其中,各传输数据包为主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的业务数据进行分拆序列化,得到的各传输数据包;对各传输数据包进行对应的反序列化,得到各传输数据包对应的业务数据。
在一个实施例中,计算机程序被处理器执行时还实现上述各实施例中的主备机数据同步方法的增加步骤或子步骤。
本领域普通技术人员可以理解实现上述实施例主备机数据同步方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各主备机数据同步方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (11)

1.一种主备机数据同步方法,其特征在于,包括:
按第一预设格式对内存块存储的业务数据进行序列化;
按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到分拆序列化后的各传输数据包;
将各所述传输数据包发送到已启用的备机;其中,各所述传输数据包用于指示所述备机进行对应的反序列化后,得到所述业务数据。
2.根据权利要求1所述的主备机数据同步方法,其特征在于,所述业务数据包括全量同步数据;所述按第一预设格式对内存块存储的业务数据进行序列化的步骤前,还包括:
接收所述备机启用时发送的全量同步请求。
3.根据权利要求1所述的主备机数据同步方法,其特征在于,所述业务数据包括增量同步数据;所述方法还包括:
缓存所述增量同步数据到预设内存;
若所述增量同步数据占用所述预设内存的空间达到内存阈值,则跳转至所述按第一预设格式对内存块存储的业务数据进行序列化的步骤。
4.根据权利要求3所述的主备机数据同步方法,其特征在于,所述方法还包括:
若预设定时器计时达到阈值,则跳转至所述按第一预设格式对内存块存储的业务数据进行序列化的步骤;其中,所述预设定时器用于对所述增量同步数据进行缓存计时。
5.根据权利要求1所述的主备机数据同步方法,其特征在于,所述按第一预设格式对内存块存储的业务数据进行序列化的步骤,包括:
根据预设的保留字节、版本号、序列化ID、业务类型ID、操作类型ID、内存长度和备份数据,对所述内存块存储的所述业务数据进行序列化。
6.根据权利要求1所述的主备机数据同步方法,其特征在于,所述按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到分拆序列化后的各传输数据包的步骤,包括:
根据预设的保留字节、版本号、模块ID、序列化ID、拆包总数、拆包序列号、包长度和包内容,对序列化后的所述业务数据进行分拆序列化,得到分拆序列化后的各所述传输数据包。
7.一种主备机数据同步方法,其特征在于,包括:
接收主机发送的各传输数据包;其中,各所述传输数据包为所述主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到的各所述传输数据包;
对各所述传输数据包进行对应的反序列化,得到各所述传输数据包对应的所述业务数据。
8.一种主备机数据同步装置,其特征在于,包括:
第一序列化模块,用于按第一预设格式对内存块存储的业务数据进行序列化;
第二序列化模块,用于按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到序列化后的各传输数据包;
数据包发送模块,用于将各所述传输数据包发送到已启用的备机;其中,各所述传输数据包用于指示所述备机进行对应的反序列化后,得到所述业务数据。
9.一种主备机数据同步装置,其特征在于,包括:
数据接收模块,用于接收主机发送的各传输数据包;其中,各所述传输数据包为所述主机按第一预设格式对内存块存储的业务数据进行序列化后,按第二预设格式将序列化后的所述业务数据进行分拆序列化,得到的各所述传输数据包;
反序列化模块,用于对各所述传输数据包进行对应的反序列化,得到各所述传输数据包对应的所述业务数据。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述主备机数据同步方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的主备机数据同步方法的步骤。
CN201810929001.2A 2018-08-15 2018-08-15 主备机数据同步方法、装置和计算机设备 Pending CN109194720A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810929001.2A CN109194720A (zh) 2018-08-15 2018-08-15 主备机数据同步方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810929001.2A CN109194720A (zh) 2018-08-15 2018-08-15 主备机数据同步方法、装置和计算机设备

Publications (1)

Publication Number Publication Date
CN109194720A true CN109194720A (zh) 2019-01-11

Family

ID=64935904

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810929001.2A Pending CN109194720A (zh) 2018-08-15 2018-08-15 主备机数据同步方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN109194720A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112416656A (zh) * 2020-12-08 2021-02-26 卡斯柯信号有限公司 一种用于车站应用服务器的数据离线存储方法
CN112565267A (zh) * 2020-12-07 2021-03-26 贵阳语玩科技有限公司 向前兼容元素增量变化的数据传输方法及系统
CN114051036A (zh) * 2021-09-23 2022-02-15 通号城市轨道交通技术有限公司 轨道交通信号系统数据同步方法、装置、设备及存储介质
CN114143329A (zh) * 2021-11-25 2022-03-04 北京凯视达科技股份有限公司 主备函数同步执行和参数传输的方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1780201A (zh) * 2004-11-17 2006-05-31 中兴通讯股份有限公司 一种实现多节点间信息同步的方法
CN103870393A (zh) * 2013-07-09 2014-06-18 携程计算机技术(上海)有限公司 缓存管理方法及系统
WO2014153478A1 (en) * 2013-03-21 2014-09-25 Nextbit Systems Inc. Detecting serialization scheme used in software applications
CN104239443A (zh) * 2014-09-01 2014-12-24 英方软件(上海)有限公司 一种序列化数据操作日志的存储方法
CN105472024A (zh) * 2015-12-28 2016-04-06 北京赛思信安技术股份有限公司 一种基于消息推送模式的跨地域数据同步方法
CN105847854A (zh) * 2016-04-12 2016-08-10 乐视控股(北京)有限公司 直播方法和系统
CN106326377A (zh) * 2016-08-15 2017-01-11 东软集团股份有限公司 序列化方法、反序列化方法、装置和系统
CN107342955A (zh) * 2017-06-29 2017-11-10 迈普通信技术股份有限公司 一种数据报文分片方法及装置、重组方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1780201A (zh) * 2004-11-17 2006-05-31 中兴通讯股份有限公司 一种实现多节点间信息同步的方法
WO2014153478A1 (en) * 2013-03-21 2014-09-25 Nextbit Systems Inc. Detecting serialization scheme used in software applications
CN103870393A (zh) * 2013-07-09 2014-06-18 携程计算机技术(上海)有限公司 缓存管理方法及系统
CN104239443A (zh) * 2014-09-01 2014-12-24 英方软件(上海)有限公司 一种序列化数据操作日志的存储方法
CN105472024A (zh) * 2015-12-28 2016-04-06 北京赛思信安技术股份有限公司 一种基于消息推送模式的跨地域数据同步方法
CN105847854A (zh) * 2016-04-12 2016-08-10 乐视控股(北京)有限公司 直播方法和系统
CN106326377A (zh) * 2016-08-15 2017-01-11 东软集团股份有限公司 序列化方法、反序列化方法、装置和系统
CN107342955A (zh) * 2017-06-29 2017-11-10 迈普通信技术股份有限公司 一种数据报文分片方法及装置、重组方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565267A (zh) * 2020-12-07 2021-03-26 贵阳语玩科技有限公司 向前兼容元素增量变化的数据传输方法及系统
CN112565267B (zh) * 2020-12-07 2023-05-02 贵阳语玩科技有限公司 向前兼容元素增量变化的数据传输方法及系统
CN112416656A (zh) * 2020-12-08 2021-02-26 卡斯柯信号有限公司 一种用于车站应用服务器的数据离线存储方法
CN112416656B (zh) * 2020-12-08 2022-08-26 卡斯柯信号有限公司 一种用于车站应用服务器的数据离线存储方法
CN114051036A (zh) * 2021-09-23 2022-02-15 通号城市轨道交通技术有限公司 轨道交通信号系统数据同步方法、装置、设备及存储介质
CN114143329A (zh) * 2021-11-25 2022-03-04 北京凯视达科技股份有限公司 主备函数同步执行和参数传输的方法及装置
CN114143329B (zh) * 2021-11-25 2023-10-27 北京凯视达科技股份有限公司 主备函数同步执行和参数传输的方法及装置

Similar Documents

Publication Publication Date Title
CN109194720A (zh) 主备机数据同步方法、装置和计算机设备
RU2205515C2 (ru) Способ и устройство слежения за пакетами данных в системе передачи пакетных данных
CN100421417C (zh) Tcp卸载的系统和方法
US10021182B2 (en) Method and apparatus for data synchronization
JP6945627B2 (ja) サービス要求のハンドリング
WO2011038597A1 (zh) 同相正交数据传输方法及系统
CN110691375B (zh) 一种选择方法、装置及计算机存储介质
WO2022111342A1 (zh) 通信同步方法、装置、存储介质、芯片及相关设备
CN108494828B (zh) 一种节点数据的更新方法、介质、装置和计算设备
JP2022084661A (ja) 同期方法および装置
CN110858790B (zh) 一种数据包的传输方法、装置、存储介质及电子装置
US9781691B2 (en) Wireless communication device, non-transitory computer readable medium, and wireless communication system
JP7030960B2 (ja) 情報処理方法、上位層機能エンティティおよびコンピュータ記憶媒体
WO2019062725A1 (zh) 一种上行数据传输方法及装置
CN111400213B (zh) 传输数据的方法、装置及系统
CN110169023A (zh) 一种数据传输方法、数据接收设备及数据发送设备
CN107995315B (zh) 业务板间信息的同步方法、装置、存储介质及计算机设备
CN111935725B (zh) 通信时序规划方法、装置、相关设备、存储介质及系统
CN111614442B (zh) 网络通信方法、装置、电子设备和存储介质
CN111901803A (zh) 通信交互方法、主节点、从节点、室内分布系统及介质
CN103138873A (zh) 层二数据包时延的获取方法及设备
CN102013918B (zh) 一种传输数据的方法、系统和装置
CN111935728A (zh) 一种握手方法、装置、相关设备、存储介质及系统
CN115278705B (zh) 通信时序规划方法、装置、相关设备、存储介质及系统
CN104967641A (zh) 一种实现主备元服务器数据同步的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200117

Address after: 510663 Shenzhou Road, Guangzhou Science City, Guangzhou economic and Technological Development Zone, Guangdong, 10

Applicant after: COMBA TELECOM SYSTEMS (CHINA) Ltd.

Address before: 510663 Shenzhou Road 10, Guangzhou Science City, Guangzhou economic and Technological Development Zone, Guangzhou, Guangdong

Applicant before: COMBA TELECOM SYSTEMS (CHINA) Ltd.

Applicant before: COMBA TELECOM SYSTEMS (GUANGZHOU) Ltd.

Applicant before: COMBA TELECOM TECHNOLOGY (GUANGZHOU) Ltd.

Applicant before: TIANJIN COMBA TELECOM SYSTEMS Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 510663 Shenzhou Road, Guangzhou Science City, Guangzhou economic and Technological Development Zone, Guangdong, 10

Applicant after: Jingxin Network System Co.,Ltd.

Address before: 510663 Shenzhou Road, Guangzhou Science City, Guangzhou economic and Technological Development Zone, Guangdong, 10

Applicant before: COMBA TELECOM SYSTEMS (CHINA) Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190111