CN112187916A - 一种跨***的数据同步方法与装置 - Google Patents
一种跨***的数据同步方法与装置 Download PDFInfo
- Publication number
- CN112187916A CN112187916A CN202011031792.0A CN202011031792A CN112187916A CN 112187916 A CN112187916 A CN 112187916A CN 202011031792 A CN202011031792 A CN 202011031792A CN 112187916 A CN112187916 A CN 112187916A
- Authority
- CN
- China
- Prior art keywords
- data
- server
- synchronization
- synchronous
- message
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 230000001360 synchronised effect Effects 0.000 claims abstract description 155
- 238000012545 processing Methods 0.000 claims abstract description 76
- 230000008569 process Effects 0.000 claims abstract description 34
- 238000004458 analytical method Methods 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请实施例公开了一种跨***的数据同步方法与装置,属于数据处理技术领域。该方法包括:第一服务器从第二服务器的消息队列中获取第一同步报文,所述第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据;所述第一服务器解析所述第一同步报文,获取第一同步数据;所述第一服务器将目标对象包括所述第一服务器的第一同步数据作为目标同步数据;所述第一服务器对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。本申请实施例满足了不同***的业务层间数据处理的一致性。
Description
技术领域
本申请实施例涉及数据处理技术领域,特别涉及一种跨***的数据同步方法与装置。
背景技术
在互联网快速发展的今天,对于***稳定性、高可用的要求变得越来越高,尤其是在金融业务领域,能够对外提供稳定的服务能力就变得尤为重要。因此各个***都在实现多中心的部署架构,以求提高***稳定性、容灾性,保证高可用。
现有技术中,各中心***在接收到交易请求时,先进行本中心的数据处理,将数据处理完成后,将结果数据同步给其它中心,其它中心对结果数据进行保存。现有技术的数据同步过程只在数据库上进行数据同步,无法满足业务层上的同步需求,无法保证跨中心间的数据实时一致性。
发明内容
本申请实施例提供了一种跨***的数据同步方法与装置,以满足不同***的业务层间数据处理的一致性。
一方面,本申请实施例提供了一种跨***的数据同步方法,该方法包括:
第一服务器从第二服务器的消息队列中获取第一同步报文,所述第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据;
所述第一服务器解析所述第一同步报文,获取第一同步数据;
所述第一服务器将目标对象包括所述第一服务器的第一同步数据作为目标同步数据;
所述第一服务器对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。
可选的,所述第一服务器从第二服务器的消息队列中获取第一同步报文,包括:
所述第一服务器接收所述第二服务器发送的同步广播;
所述第一服务器根据所述同步广播,向所述第二服务器发送同步数据获取请求;
所述第一服务器接收所述第二服务器发送的所述第一同步报文。
可选的,所述第一服务器解析所述目标同步报文之后,还包括:
若所述第一服务器解析所述目标同步报文失败,则将所述目标同步报文进行缓存;
所述第一服务器对所述目标同步数据进行处理之后,还包括:
若所述第一服务器对所述目标同步数据处理失败,则将所述目标同步数据进行缓存。
可选的,所述第一服务器对所述目标同步数据进行处理,包括:
所述第一服务器将所述目标同步数据中添加同步标识。
可选的,还包括:
所述第一服务器接收数据同步请求,所述数据同步请求中包括第二同步数据;
所述第一服务器对所述第二同步数据进行处理,确定并存储所述第二同步数据的第二处理结果数据;
所述第一服务器根据所述第二同步数据,生成第二同步报文;
所述第一服务器将所述第二同步报文加入所述第一服务器的消息队列。
另一方面,本发明实施例还提供一种跨***的数据同步装置,所述装置包括:
收发单元,用于从第二服务器的消息队列中获取第一同步报文,第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据;
解析单元,用于解析所述第一同步报文,获取第一同步数据;
判断单元,用于将目标对象包括所述第一服务器的第一同步数据作为目标同步数据;
处理单元,用于对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。
可选的,所述收发单元,具体用于:
接收所述第二服务器发送的同步广播;
根据所述同步广播,向所述第二服务器发送同步数据获取请求;
接收所述第二服务器发送的所述第一同步报文。
可选的,还包括缓存单元,用于:
若解析所述目标同步报文失败,则将所述目标同步报文进行缓存;
若对所述目标同步数据处理失败,则将所述目标同步数据进行缓存。
可选的,所述处理单元,具体用于:
将所述目标同步数据中添加同步标识。
可选的,所述收发单元,还用于接收数据同步请求,所述数据同步请求中包括第二同步数据;
所述处理单元,还用于对所述第二同步数据进行处理,确定并存储所述第二同步数据的第二处理结果数据;根据所述第二同步数据,生成第二同步报文;将所述第二同步报文加入所述第一服务器的消息队列。
另一方面,本申请实施例提供了一种计算设备,包括至少一个处理器、以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行本申请实施例提供的跨***的数据同步方法的步骤。
另一方面,本申请实施例提供了一种存储介质,所述存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行本申请实施例提供的跨***的数据同步方法的步骤。
本发明实施例中涉及两个或两个以上的***,每个***中包括至少一个服务器。其中,第一服务器和第二服务器为不同***中的服务器。第二服务器接收到第一同步数据后,将第一同步数据进行处理得到第一处理结果数据,第二服务器将第一处理结果数据进行存储,并根据第一同步数据生成第一同步报文缓存至消息队列中。第一服务器从第二服务器的消息队列中获取第一同步报文,并对第一同步报文进行解析得到第一同步数据。将目标对象包括第一服务器的第一同步数据作为第一服务器的目标同步数据。再对目标同步数据进行处理,确定并存储目标同步数据的第一处理结果数据。本发明实施例中,第二服务器将未经过处理的原始数据,即第一同步数据直接同步,借助于消息中间件,将第一同步数据直接交由第一服务器的业务层进行数据处理,从而保证第一服务器的业务层与第二服务器的业务层之间数据同步需求,同时保证了数据处理的实时一致性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的一种跨***的数据同步***的***架构图;
图2示出了本申请实施例提供的中心***中服务器的三层架构的结构示意图;
图3示出了本申请实施例提供的一种跨***的数据同步方法的流程图;
图4示出了本申请实施例提供的数据同步协议规定的同步报文的格式示意图;
图5示出了本申请一个实施例提供的跨***的数据同步装置的结构方框图;
图6示出了本申请一个实施例提供的服务器的结构方框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面对本申请实施例的技术方案的架构做一些简单介绍,需要说明的是,以下介绍的架构仅用于说明本申请实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
为进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。
参考图1,其为本申请实施例提供的跨***的数据同步方法的***架构图。本发明实施例提供了一种数据处理方法。如图1所示,本发明实施例所适用的一种***架构,包括多个中心***,其中,每个中心***包含有多个服务器,服务器可以是计算机等网络设备,服务器可以是一个独立的设备,也可以是多个服务器所形成的服务器集群。优选的,服务器可以采用云计算技术进行信息处理。数据库与中心之间、中心与中心之间可以通过INTERNET网络进行通信,也可以通过全球移动通信***(Global System for MobileCommunications,简称GSM)、长期演进(long term evolution,简称LTE)***等移动通信***进行通信。
具体的,本发明实施例中的第一服务器可以是图1中任一中心***的服务器,对应的第二服务器为第一服务器所在中心***之外的其它任一中心***中的服务器。图1中的每一个中心***均可以利用本发明实施例中的数据同步方式,对其余中心***的数据进行同步,以满足不同中心***的业务层以及数据层间的数据一致性。
一种可选的实施例中,图1中各中心***的服务器为三层架构,即把各个功能模块划分为界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL)三层架构,各层之间采用接口相互访问,并通过对象模型的实体类(Model)作为数据传递的载体,不同的对象模型的实体类一般对应于数据库的不同表,实体类的属性与数据库表的字段名一致。
图2示出了三层架构的结构示意图。其中,***主要功能和业务逻辑都在业务逻辑层进行处理。数据访问层主要是对非原始数据的操作层,即对数据库或者文本文件等存放数据的形式进行操作,具体为业务逻辑层或界面层提供数据服务。业务逻辑层,主要是针对具体的问题进行操作,也可以理解为对数据层的操作,对数据业务逻辑进行处理。界面层主要表现方式为WEB方式,或者也可以表示成WINFORM方式,主要接收用户的请求,以及数据反馈,为客户端提供应用程序的访问,为用户提供交互操作的界面。
具体的,本发明实施例中的每个中心***的服务器的消息中间件均新建一个标签(也作Topic),专门用于存储本中心需要进行跨中心同步的数据。当本中心有数据需要跨中心同步时,仅需要将数据缓存至消息中间件的跨中心同步Topic即可。其他中心***可以来订阅该中心***的同步Topic消费同步数据。
每个中心***都新增一个或多个数据发布服务,用于按照同步协议将待同步数据进行组包并发布,如果发布失败,需要本地记录原始数据,并具备本地原始数据的二次处理能力。数据发布时需要判断待同步数据的来源,如果来源于其他中心,则不做处理,避免形成数据循环同步。
每个中心都新增一个(或多个)同步数据订阅服务,用于订阅并消费其他中心的跨中心同步Topic数据。每当其他中心的同步Topic有数据时,当前中心都可以通过订阅服务直接获取到同步数据,并进行处理,实现数据跨中心的流转。
当前中心处理同步数据时,需要在数据中增加同步标志,标识该数据来源方为其他中心,避免数据循环同步;如果处理失败,依然要保证跨中心同步数据的消费进度不受影响,以免影响发布数据的中心运营。为此处理失败的数据需要本地缓存,并具备再次发起处理的能力。
当然,本申请实施例提供的架构并不限用于图1以及图2所示的结构,本申请实施例并不进行限制。为进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。
现有技术中的跨中心同步方法仅在数据库层面上进行同步。但由于同步数据不光是要存入数据库,还需要刷新业务层,因此传统的只在数据库上进行数据同步的方案无法解决其他中心的业务层刷新问题,如果数据库和业务层同时同步,虽然能解决中心同步问题,但是由于两个同步规则导致跨中心数据带宽等资源开销过大,且一旦有一个同步有问题很容易会导致中心内的数据库和业务层数据不一致问题。
为了解决上述问题,本发明实施例提供了一种跨***的数据同步方法。请参见图3,为本发明实施例提供的跨***的数据同步方法的流程示意图,该方法可以应用于如图1所示的场景中,该方法的流程描述如下。
步骤301、第一服务器从第二服务器的消息队列中获取第一同步报文。
其中,所述第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据。
步骤302、第一服务器解析所述第一同步报文,获取第一同步数据。
步骤303、第一服务器将目标对象包括所述第一服务器的第一同步数据作为目标同步数据。
步骤304、第一服务器对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。
本发明实施例中涉及两个或两个以上的***,每个***中包括至少一个服务器。其中,第一服务器和第二服务器为不同***中的服务器。第二服务器接收到第一同步数据后,将第一同步数据进行处理得到第一处理结果数据,第二服务器将第一处理结果数据进行存储,并根据第一同步数据生成第一同步报文缓存至消息队列中。第一服务器从第二服务器的消息队列中获取第一同步报文,并对第一同步报文进行解析得到第一同步数据。将目标对象包括第一服务器的第一同步数据作为第一服务器的目标同步数据。再对目标同步数据进行处理,确定并存储目标同步数据的第一处理结果数据。本发明实施例中,第二服务器将未经过处理的原始数据,即第一同步数据直接同步,借助于消息中间件,将第一同步数据直接交由第一服务器的业务层进行数据处理,从而保证第一服务器的业务层与第二服务器的业务层之间数据同步需求,同时保证了数据处理的实时一致性。
本发明实施例中,每一个中心***的服务器均可以作为第一服务器,也可以作为第二服务器。即每一个中心***的服务器均可作为同步数据的发布方,也可作为同步数据的接收方。
当服务器作为同步数据的发布方时,本发明实施例中的数据同步方法还包括:
第一服务器接收数据同步请求,所述数据同步请求中包括第二同步数据;
第一服务器对所述第二同步数据进行处理,确定并存储所述第二同步数据的第二处理结果数据;
第一服务器根据所述第二同步数据,生成第二同步报文;
第一服务器将所述第二同步报文加入所述第一服务器的消息队列。
具体实施过程中,第一服务器接收到数据同步请求后,对数据同步请求中的第二同步数据进行处理,第二同步数据处理完成后,将第二同步数据的第二处理结果数据存储进数据库中。第一服务器将原始数据,即第二同步数据生成第二同步报文。
具体的同步报文依据数据同步协议生成,数据同步协议规定同步报文的格式如图4所示。一笔同步报文除了需要同步数据之外,还要有同步协议版本号、目标服务名、同步发起方和目标方、数据类型、数据长度等内容。第一服务器根据业务场景要求生成目标处理业务服务名,并选择所有中心***或指定中心***中的服务器作为目标方,根据数据同步协议对第二同步数据进行封装输出第二同步报文。
第一服务器根据第二同步数据生成第二同步报文后,将第二同步报文加入第一服务器的消息中间件中。其他中心的服务器可以来订阅第一服务器的消息中间件中的第二同步数据。
进一步地,第一服务器从第二服务器的消息队列中获取第一同步报文,包括:
所述第一服务器接收所述第二服务器发送的同步广播;
所述第一服务器根据所述同步广播,向所述第二服务器发送同步数据获取请求;
所述第一服务器接收所述第二服务器发送的所述第一同步报文。
具体实施过程中,本发明实施例中第一服务器获取第一同步报文的方式可以是第二服务器向其余所有中心***的服务器进行广播。其他中心***的服务器作为第一服务器接收第二服务器发送的同步广播。第一服务器根据同步广播,向第二服务器发送同步数据获取请求,并接收所述第二服务器发送的第一同步报文。
另一种获取第一同步报文的方式也可以是第一服务器主动向第二服务器发送同步数据获取请求。具体地,第一服务器按照一定频率向第二服务器发送同步数据获取请求。第二服务器接收到同步数据获取请求后,将消息中间件中的第一同步报文向第一服务器发送。本发明实施例中第一服务器获取第一同步报文的方式仅为举例,不做限制。
进一步地,所述第一服务器解析所述目标同步报文之后,还包括:
若所述第一服务器解析所述目标同步报文失败,则将所述目标同步报文进行缓存;
所述第一服务器对所述目标同步数据进行处理之后,还包括:
若所述第一服务器对所述目标同步数据处理失败,则将所述目标同步数据进行缓存。
具体实施过程中,第一服务器接收到第一同步报文后,对第一同步报文进行解析,若解析成功,则对第一同步报文中的第一同步数据进行处理。根据第一同步报文的内容判断第一同步报文的目标对象是否包括第一服务器。若是,则将第一同步数据作为目标同步数据进行处理,若否,表明第一服务器无需同步第一同步报文中的同步数据,则第一服务器将第一同步数据删除。
另一方面,若第一服务器对第一同步报文解析不成功,为了防止数据丢失,将第一同步报文先进行缓存,待后续统一处理。此外,若第一服务器对目标同步数据处理失败,也将目标同步数据进行缓存,等待后续统一处理,从而保证跨中心同步数据的消费进度不受影响,以免影响发布同步数据的第二服务器的中心运营。
进一步地,所述第一服务器对所述目标同步数据进行处理,包括:
所述第一服务器将所述目标同步数据中添加同步标识。
具体实施过程中,第一服务器处理目标同步数据时,需要在目标同步数据中增加同步标识,标识该同步数据来源方为其他中心心跳,避免数据循环同步。
下面以具体实施例对上述流程进行详细介绍。具体实施例中的场景为商户联机查询服务***(下文简称MOQS)使用该方案,具体地:上游会将商户数据通过实时RPC调用的方式传输给MOQS,MOQS需要将其先入库再装载到redis。由于MOQS是多中心部署,因此为了让调用方对多中心内部的部署不关注,MOQS采用了本发明实施例中的数据同步方法。在接收到业务处理请求时,先进行本中心***的数据处理,待数据完成处理成功后(入库+Redis装载),再通过消息中间件将数据同步给其他中心***,由其他中心***进行数据处理。具体过程包括:
每个中心***的消息队列增加跨中心Topic(标签),且新增一个同步订阅服务订阅该跨中心Topic。
单中心***收到实时同步请求后,进行本中心***数据处理;完成处理后将数据及同步参数传递给同步发布服务,本场景下同步的数据为原始实时同步请求数据。
同步数据发布服务对同步数据进行检查,将非来源于其他中心***同步的数据按照跨中心协议约定格式进行组包,向本中心***的消息队列发布。
其余中心***的同步订阅服务获取当前中心***的同步数据,按照协议要求进行报文解包,解包如果失败则将同步报文缓存本地文件。为避免增加跨中心***的网络开销,每次都是批量获取同步数据。
解包后进行源、目标判断,对于源不是本中心***且目标是本中心***的同步数据进行处理,其他数据丢弃。
在报文中取出同步数据,按照报文中的目标服务名进行调用,获取调用结果。
如果调用失败,则将同步报文缓存本地文件,异常情况处理完毕后,进行统一处理;如果调用成功,则表示当前同步报文成功,完成数据中心间同步。
针对处理失败的交易,提供手动重做方式,待中心间升级窗口期关闭或者异常问题修复后进行二次处理,完成失败数据追补。
下述为本申请装置实施例,对于装置实施例中未详尽描述的细节,可以参考上述一一对应的方法实施例。
请参考图5,其示出了本申请一个实施例提供的跨***的数据同步装置的结构方框图。该跨***的数据同步装置通过硬件或者软硬件的结合实现成为图1的中心***中服务器的全部或者一部分。该装置包括:
收发单元501,用于从第二服务器的消息队列中获取第一同步报文,第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据;
解析单元502,用于解析所述第一同步报文,获取第一同步数据;
判断单元503,用于将目标对象包括所述第一服务器的第一同步数据作为目标同步数据;
处理单元504,用于对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。
可选的,所述收发单元501,具体用于:
接收所述第二服务器发送的同步广播;
根据所述同步广播,向所述第二服务器发送同步数据获取请求;
接收所述第二服务器发送的所述第一同步报文。
可选的,还包括缓存单元505,用于:
若解析所述目标同步报文失败,则将所述目标同步报文进行缓存;
若对所述目标同步数据处理失败,则将所述目标同步数据进行缓存。
可选的,所述处理单元504,具体用于:
将所述目标同步数据中添加同步标识。
可选的,所述收发单元501,还用于接收数据同步请求,所述数据同步请求中包括第二同步数据;
所述处理单元504,还用于对所述第二同步数据进行处理,确定并存储所述第二同步数据的第二处理结果数据;根据所述第二同步数据,生成第二同步报文;将所述第二同步报文加入所述第一服务器的消息队列。
请参考图6,其示出了本申请一个实施例提供的服务器的结构方框图。该服务器1000实现为成为图1中心***中的服务器。具体来讲:
服务器1000包括中央处理单元(CPU)1001、包括随机存取存储器(RAM)1002和只读存储器(ROM)1003的***存储器1004,以及连接***存储器1004和中央处理单元1001的***总线1005。所述服务器1000还包括帮助计算机内的各个器件之间传输信息的基本输入/输出***(I/O***)1006,和用于存储操作***1013、应用程序1014和其他程序模块1015的大容量存储设备1007。
所述基本输入/输出***1006包括有用于显示信息的显示器1008和用于用户输入信息的诸如鼠标、键盘之类的输入设备1009。其中所述显示器1008和输入设备1009都通过连接到***总线1005的输入输出控制器1010连接到中央处理单元1001。所述基本输入/输出***1006还可以包括输入输出控制器1010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1010还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1007通过连接到***总线1005的大容量存储控制器(未示出)连接到中央处理单元1001。所述大容量存储设备1007及其相关联的计算机可读介质为服务器1000提供非易失性存储。也就是说,所述大容量存储设备1007可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的***存储器1004和大容量存储设备1007可以统称为存储器。
根据本发明的各种实施例,所述服务器1000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1000可以通过连接在所述***总线1005上的网络接口单元1011连接到网络1012,或者说,也可以使用网络接口单元1011来连接到其他类型的网络或远程计算机***(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本发明实施例提供的跨***的数据同步方法的指令。
本领域普通技术人员可以理解上述实施例的签到方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
本领域普通技术人员可以理解上述实施例的签到方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random AccessMemory)、磁盘或光盘等。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种跨***的数据同步方法,其特征在于,所述方法包括:
第一服务器从第二服务器的消息队列中获取第一同步报文,所述第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据;
所述第一服务器解析所述第一同步报文,获取第一同步数据;
所述第一服务器将目标对象包括所述第一服务器的第一同步数据作为目标同步数据;
所述第一服务器对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。
2.根据权利要求1所述的方法,其特征在于,所述第一服务器从第二服务器的消息队列中获取第一同步报文,包括:
所述第一服务器接收所述第二服务器发送的同步广播;
所述第一服务器根据所述同步广播,向所述第二服务器发送同步数据获取请求;
所述第一服务器接收所述第二服务器发送的所述第一同步报文。
3.根据权利要求1所述的方法,其特征在于,所述第一服务器解析所述目标同步报文之后,还包括:
若所述第一服务器解析所述目标同步报文失败,则将所述目标同步报文进行缓存;
所述第一服务器对所述目标同步数据进行处理之后,还包括:
若所述第一服务器对所述目标同步数据处理失败,则将所述目标同步数据进行缓存。
4.根据权利要求1所述的方法,其特征在于,所述第一服务器对所述目标同步数据进行处理,包括:
所述第一服务器将所述目标同步数据中添加同步标识。
5.根据权利要求1至4任一项所述的方法,其特征在于,还包括:
所述第一服务器接收数据同步请求,所述数据同步请求中包括第二同步数据;
所述第一服务器对所述第二同步数据进行处理,确定并存储所述第二同步数据的第二处理结果数据;
所述第一服务器根据所述第二同步数据,生成第二同步报文;
所述第一服务器将所述第二同步报文加入所述第一服务器的消息队列。
6.一种跨***的数据同步装置,其特征在于,所述装置包括:
收发单元,用于从第二服务器的消息队列中获取第一同步报文,第一服务器和所述第二服务器为不同***中的服务器,所述第一同步报文中包含第一同步数据,所述第二服务器中存储有所述第一同步数据的第一处理结果数据;
解析单元,用于解析所述第一同步报文,获取第一同步数据;
判断单元,用于将目标对象包括所述第一服务器的第一同步数据作为目标同步数据;
处理单元,用于对所述目标同步数据进行处理,确定并存储所述目标同步数据的第一处理结果数据。
7.根据权利要求6所述的装置,其特征在于,所述收发单元,具体用于:
接收所述第二服务器发送的同步广播;
根据所述同步广播,向所述第二服务器发送同步数据获取请求;
接收所述第二服务器发送的所述第一同步报文。
8.根据权利要求6所述的装置,其特征在于,还包括缓存单元,用于:
若解析所述目标同步报文失败,则将所述目标同步报文进行缓存;
若对所述目标同步数据处理失败,则将所述目标同步数据进行缓存。
9.根据权利要求6所述的装置,其特征在于,所述处理单元,具体用于:
将所述目标同步数据中添加同步标识。
10.根据权利要求6至9任一项所述的装置,其特征在于,
所述收发单元,还用于接收数据同步请求,所述数据同步请求中包括第二同步数据;
所述处理单元,还用于对所述第二同步数据进行处理,确定并存储所述第二同步数据的第二处理结果数据;根据所述第二同步数据,生成第二同步报文;将所述第二同步报文加入所述第一服务器的消息队列。
11.一种计算设备,其特征在于,包括至少一个处理器、以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求1至5任一项所述的跨***的数据同步方法。
12.一种存储介质,所述存储介质存储有计算机指令,其特征在于,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1至5任一项所述的跨***的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011031792.0A CN112187916B (zh) | 2020-09-27 | 2020-09-27 | 一种跨***的数据同步方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011031792.0A CN112187916B (zh) | 2020-09-27 | 2020-09-27 | 一种跨***的数据同步方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112187916A true CN112187916A (zh) | 2021-01-05 |
CN112187916B CN112187916B (zh) | 2023-12-05 |
Family
ID=73945298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011031792.0A Active CN112187916B (zh) | 2020-09-27 | 2020-09-27 | 一种跨***的数据同步方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112187916B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116723204A (zh) * | 2023-08-07 | 2023-09-08 | 南京国电南自轨道交通工程有限公司 | 一种分层***之间大数据量实时数据的同步方法 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932472A (zh) * | 2012-11-13 | 2013-02-13 | 深圳市路友网络科技有限公司 | 一种数据处理方法以及通信*** |
CN103646353A (zh) * | 2013-11-28 | 2014-03-19 | 国家电网公司 | 变电站自动化监控***的数据库同步方法 |
US20140282988A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Retry and Snapshot Enabled Cross-Platform Synchronized Communication Queue |
CN106254456A (zh) * | 2016-08-03 | 2016-12-21 | 深圳市商汤科技有限公司 | 一种数据同步方法和数据同步*** |
CN107612947A (zh) * | 2017-11-03 | 2018-01-19 | 北京微视酷科技有限责任公司 | 一种虚拟现实设备间同步的通信方法及*** |
CN107819795A (zh) * | 2016-09-12 | 2018-03-20 | 北京金山云网络技术有限公司 | 一种dns主辅服务器数据同步方法、装置及*** |
CN108256002A (zh) * | 2017-12-31 | 2018-07-06 | 广东欧珀移动通信有限公司 | 跨机房数据同步方法、装置、***以及服务器 |
CN108347476A (zh) * | 2018-01-22 | 2018-07-31 | 广东欧珀移动通信有限公司 | 跨机房数据同步方法、装置以及服务器 |
CN109101627A (zh) * | 2018-08-14 | 2018-12-28 | 交通银行股份有限公司 | 异构数据库同步方法及装置 |
CN109299056A (zh) * | 2018-09-19 | 2019-02-01 | 潍坊工程职业学院 | 一种基于分布式文件***的数据同步方法和装置 |
CN109788053A (zh) * | 2019-01-04 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 数据同步方法和*** |
CN110502572A (zh) * | 2019-06-26 | 2019-11-26 | 中电万维信息技术有限责任公司 | 一种数据同步的方法及服务器 |
CN110727736A (zh) * | 2019-10-24 | 2020-01-24 | 中国建设银行股份有限公司 | 一种数据同步方法、装置、电子设备和存储介质 |
CN110795443A (zh) * | 2019-10-08 | 2020-02-14 | 中国建设银行股份有限公司 | 数据同步的方法、装置、设备和计算机可读介质 |
CN111309693A (zh) * | 2020-02-07 | 2020-06-19 | 北京奇艺世纪科技有限公司 | 一种数据同步方法、装置、***、电子设备及存储介质 |
-
2020
- 2020-09-27 CN CN202011031792.0A patent/CN112187916B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932472A (zh) * | 2012-11-13 | 2013-02-13 | 深圳市路友网络科技有限公司 | 一种数据处理方法以及通信*** |
US20140282988A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Retry and Snapshot Enabled Cross-Platform Synchronized Communication Queue |
CN103646353A (zh) * | 2013-11-28 | 2014-03-19 | 国家电网公司 | 变电站自动化监控***的数据库同步方法 |
CN106254456A (zh) * | 2016-08-03 | 2016-12-21 | 深圳市商汤科技有限公司 | 一种数据同步方法和数据同步*** |
CN107819795A (zh) * | 2016-09-12 | 2018-03-20 | 北京金山云网络技术有限公司 | 一种dns主辅服务器数据同步方法、装置及*** |
CN107612947A (zh) * | 2017-11-03 | 2018-01-19 | 北京微视酷科技有限责任公司 | 一种虚拟现实设备间同步的通信方法及*** |
CN108256002A (zh) * | 2017-12-31 | 2018-07-06 | 广东欧珀移动通信有限公司 | 跨机房数据同步方法、装置、***以及服务器 |
CN108347476A (zh) * | 2018-01-22 | 2018-07-31 | 广东欧珀移动通信有限公司 | 跨机房数据同步方法、装置以及服务器 |
CN109101627A (zh) * | 2018-08-14 | 2018-12-28 | 交通银行股份有限公司 | 异构数据库同步方法及装置 |
CN109299056A (zh) * | 2018-09-19 | 2019-02-01 | 潍坊工程职业学院 | 一种基于分布式文件***的数据同步方法和装置 |
CN109788053A (zh) * | 2019-01-04 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 数据同步方法和*** |
WO2020140661A1 (zh) * | 2019-01-04 | 2020-07-09 | 深圳壹账通智能科技有限公司 | 数据同步方法和*** |
CN110502572A (zh) * | 2019-06-26 | 2019-11-26 | 中电万维信息技术有限责任公司 | 一种数据同步的方法及服务器 |
CN110795443A (zh) * | 2019-10-08 | 2020-02-14 | 中国建设银行股份有限公司 | 数据同步的方法、装置、设备和计算机可读介质 |
CN110727736A (zh) * | 2019-10-24 | 2020-01-24 | 中国建设银行股份有限公司 | 一种数据同步方法、装置、电子设备和存储介质 |
CN111309693A (zh) * | 2020-02-07 | 2020-06-19 | 北京奇艺世纪科技有限公司 | 一种数据同步方法、装置、***、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
KUN QIAN; ZHONGZHI LUAN; ZUOWEI ZHANG, ET.AL.: "Data Analysis and Synchronization on Inter-Continent Data Placement Laboratory", 《2015 INTERNATIONAL CONFERENCE ON CLOUD COMPUTING AND BIG DATA (CCBD)》 * |
莫皓颖;户江民;张伟;: "异构网络的时间同步技术研究", 中国新通信, no. 20 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116723204A (zh) * | 2023-08-07 | 2023-09-08 | 南京国电南自轨道交通工程有限公司 | 一种分层***之间大数据量实时数据的同步方法 |
CN116723204B (zh) * | 2023-08-07 | 2024-02-09 | 南京国电南自轨道交通工程有限公司 | 一种分层***之间大数据量实时数据的同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112187916B (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101863398B1 (ko) | 다중-서버 예약 시스템 상의 동기화 메커니즘 시스템 및 방법 | |
US9721246B2 (en) | Synchronization patterns for mobile applications | |
US20130318061A1 (en) | Sharing business data across networked applications | |
CN105740048A (zh) | 一种镜像管理方法、装置及*** | |
CN110413418B (zh) | 缓存同步装置及方法,缓存同步***、电子设备 | |
CN109783151B (zh) | 规则变更的方法和装置 | |
CN108536778A (zh) | 一种数据应用共享平台及方法 | |
CN103793485A (zh) | 客户端基于缓存数据实现查询网络数据的方法 | |
CN106713391A (zh) | 一种session信息的共享方法和共享*** | |
CN112866421B (zh) | 基于分布式缓存以及nsq的智能合约运行方法及装置 | |
CN104468299A (zh) | 基于用户规则的企业服务总线*** | |
CN110019539A (zh) | 一种数据仓库的数据同步的方法和装置 | |
CN115268949A (zh) | 一种镜像预热方法、装置、设备及存储介质 | |
CN111460038A (zh) | 一种数据准实时同步方法及装置 | |
CN112187916A (zh) | 一种跨***的数据同步方法与装置 | |
CN112052104A (zh) | 基于多机房实现的消息队列的管理方法及电子设备 | |
CN115361382B (zh) | 基于数据群组的数据处理方法、装置、设备和存储介质 | |
CN115454666A (zh) | 消息队列集群间的数据同步方法和装置 | |
CN115629909A (zh) | 业务数据处理的方法、装置、电子设备和存储介质 | |
US11153388B2 (en) | Workflow engine framework for cross-domain extension | |
CN112667393B (zh) | 分布式任务计算调度框架搭建的方法、装置及计算机设备 | |
CN115378937A (zh) | 任务的分布式并发方法、装置、设备和可读存储介质 | |
CN112748855B (zh) | 处理高并发数据请求的方法和装置 | |
CN113190624A (zh) | 基于分布式跨容器的异步转同步调用方法及装置 | |
CN113472638A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |