CN110502572A - 一种数据同步的方法及服务器 - Google Patents

一种数据同步的方法及服务器 Download PDF

Info

Publication number
CN110502572A
CN110502572A CN201910561209.8A CN201910561209A CN110502572A CN 110502572 A CN110502572 A CN 110502572A CN 201910561209 A CN201910561209 A CN 201910561209A CN 110502572 A CN110502572 A CN 110502572A
Authority
CN
China
Prior art keywords
data
server
updated
current server
treated
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
CN201910561209.8A
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.)
China Telecom Wanwei Information Technology Co Ltd
Original Assignee
China Telecom Wanwei Information Technology 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 China Telecom Wanwei Information Technology Co Ltd filed Critical China Telecom Wanwei Information Technology Co Ltd
Priority to CN201910561209.8A priority Critical patent/CN110502572A/zh
Publication of CN110502572A publication Critical patent/CN110502572A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种数据同步的方法及服务器,用于高效、稳定的同步数据。本发明实施例方法包括:当前服务器的数据发生更新后,获取同步请求;所述当前服务器根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;所述当前服务器将所述消息队列接收的所述发生更新的数据缓存到本地数据库中;所述当前服务器对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;所述当前服务器以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。

Description

一种数据同步的方法及服务器
技术领域
本发明涉及数据通信技术领域,尤其涉及一种数据同步的方法及服务器。
背景技术
目前,在很多应用场景下,两个系统数据实时同步的过程中,一般请求方式是当前系统在新增或更新数据时,调用目标系统的同步接口把数据传给目标系统,目标系统收到请求后处理数据到目标系统进行存储。在上面这种数据同步方式中,很容易出现高并发时请求超时、请求响应不稳定、服务异常时数据丢失等问题。
发明内容
本发明实施例提供了一种数据同步的方法及服务器,用于高效、稳定的同步数据。
有鉴于此,本发明第一方面提供了一种数据同步的方法,可以包括:
当前服务器的数据发生更新后,获取同步请求;
所述当前服务器根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;
所述当前服务器将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;
所述当前服务器对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;
所述当前服务器以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。
可选的,在本发明的一些实施例中,
所述将发生更新的数据向消息队列发送,包括:
将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
可选的,在本发明的一些实施例中,所述方法还包括:
所述当前服务器接收第三方服务器发送的同步数据;
所述当前服务器采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;
所述当前服务器对所述解析处理后的数据进行保存。
可选的,在本发明的一些实施例中,所述方法还包括:
所述当前服务器将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;
当本次同步异常或者同步出错时,根据所述日志记录,所述当前服务器对所述发生更新的数据进行再次同步处理。
本发明第二方面提供了一种服务器,可以包括:
接收模块,用于当前服务器的数据发生更新后,获取同步请求;
处理模块,用于根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;
发送模块,用于以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。
可选的,在本发明的一些实施例中,
所述处理模块,具体用于将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
可选的,在本发明的一些实施例中,
所述接收模块,还用于接收第三方服务器发送的同步数据;
所述处理模块,还用于采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;对所述解析处理后的数据进行保存。
可选的,在本发明的一些实施例中,
所述处理模块,还用于将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;当本次同步异常或者同步出错时,根据所述日志记录,对所述发生更新的数据进行再次同步处理。
本发明第三方面提供了一种服务器,可以包括:
收发器,处理器,存储器,其中,所述收发器,所述处理器和所述存储器通过总线连接;
所述存储器,用于存储操作指令;
所述收发器,用于当前服务器的数据发生更新后,获取同步请求;以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理;
所述处理器,用于调用所述操作指令,根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据。
可选的,在本发明的一些实施例中,
所述处理器,具体用于将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
可选的,在本发明的一些实施例中,
所述收发器,还用于接收第三方服务器发送的同步数据;
所述处理器,还用于采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;对所述解析处理后的数据进行保存。
可选的,在本发明的一些实施例中,
所述处理器,还用于将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;当本次同步异常或者同步出错时,根据所述日志记录,对所述发生更新的数据进行再次同步处理。
本发明第四方面提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如本发明第一方面及第一方面任一可选实现方式中所述的数据同步的方法的步骤。
从以上技术方案可以看出,本发明实施例具有以下优点:
在本发明实施例中,当前服务器的数据发生更新后,获取同步请求;所述当前服务器根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;所述当前服务器将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;所述当前服务器对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;所述当前服务器以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。当前服务器需要给目标服务器同步数据时,先把需要同步的数据推送给消息队列,这样提高了程序的稳定性,避免高并发时直接请求目标服务器接口时服务器压力过大等问题,且方便做集群部署。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,还可以根据这些附图获得其它的附图。
图1为本发明实施例中数据同步的方法的一个实施例示意图;
图2A为本发明实施例中主要代码的一个逻辑示意图;
图2B为本发明实施例中主要代码的另一个逻辑示意图;
图2C为本发明实施例中主要代码的另一个逻辑示意图;
图2D为本发明实施例中主要代码的另一个逻辑示意图;
图3A为本发明实施例中业务处理的一个代码逻辑示意图;
图3B为本发明实施例中业务处理的另一个代码逻辑示意图;
图3C为本发明实施例中业务处理的另一个代码逻辑示意图;
图3D为本发明实施例中业务处理的另一个代码逻辑示意图;
图3E为本发明实施例中业务处理的另一个代码逻辑示意图;
图3F为本发明实施例中异常日志记录的一个代码逻辑示意图;
图3G为本发明实施例中异常日志记录的另一个代码逻辑示意图;
图3H为本发明实施例中定时任务调用异常请求重发的一个代码逻辑示意图;
图4为本发明实施例中服务器的一个实施例示意图;
图5为本发明实施例中服务器的另一个实施例示意图。
具体实施方式
本发明实施例提供了一种数据同步的方法及服务器,用于高效、稳定的同步数据。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,都应当属于本发明保护的范围。
为了克服上述现有技术中存在的问题,本发明的目的是提供一种基于消息队列实现数据同步的方式,解决了现有技术中存在的问题。实现更稳定、高效地同步数据。
下面以实施例的方式,对本发明技术方案做进一步的说明,如图1所示,为本发明实施例中数据同步的方法的一个实施例示意图,可以包括:
101、当前服务器的数据发生更新后,获取同步请求。
可以理解的是,当前服务器也可以称呼为当前系统,目标服务器也可以称呼为目标系统。
需要说明的是,当前服务器的数据发生更新,可以理解为数据发生新增或者修改,当前服务器获取同步请求。
102、当前服务器根据所述同步请求将发生更新的数据向消息队列发送。
所述将发生更新的数据向消息队列发送,包括:将发生更新的数据以map形式向消息队列发送。例如:将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
示例性的,在当前系统中先把需要同步的数据以map形式存放到队列(这里用到的是apache-activemq消息队列)。
本发明在当前系统发生数据新增或修改以后,将发生变化的数据列以Map的形式发往消息队列(例如这里可以使用apache-activemq-5.9.0作为消息队列)中。
103、当前服务器将所述消息队列接收的所述发生更新的数据缓存到本地数据库中。
其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息。
104、所述当前服务器对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据。
用本发明作为队列的消费者去接收队列中的数据,缓存到本地数据库(用于数据归档和错误转发),通过判断数据中的业务信息分发到不同的业务功能去处理。
示例性的,如图2A所示,为本发明实施例中主要代码的一个逻辑示意图。如图2B所示,为本发明实施例中主要代码的另一个逻辑示意图。
在图2A中,以@JmsListener(destination=“mcToPaMQ”)注解的方式注入当前方法做为消息队列的消费者,在拿到消息队列分发的数据以后,解析、存入请求日志表,根据不同的业务类型(图2A中code字段)和主键(图2A中ywId),获取到需要同步的数据信息,然后根据业务主键和业务类型,跳转到不同的业务处理方法去处理,并将同步数据送至目标系统。
可以理解的是,后将处理结果(STATE状态,TBCS填报次数,STATE_DESC状态描述)更新到调用服务日志表中。
105、当前服务器以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。
根据一些业务要求将数据处理完之后,最后以JSON的形式转发到目标系统,由目标根据相应的规则去接收处理数据进行存储。
可选的,在本发明的一些实施例中,所述当前服务器接收第三方服务器发送的同步数据;所述当前服务器采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;所述当前服务器对所述解析处理后的数据进行保存。
可选的,在本发明的一些实施例中,所述当前服务器将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;当本次同步异常或者同步出错时,根据所述日志记录,所述当前服务器对所述发生更新的数据进行再次同步处理。
示例性的,本发明也可以接收由第三方系统传输过来的数据,考虑到数据量大时处理效率低下的问题,采用多线程技术进行接口处理传输过来的数据进行解析处理,最后存储到相应的数据库中。
在图2B中根据CRON表达式定时任务,每天凌晨1点,在调用服务日志表中取出前一天中调用接口失败的数据进行重新处理(将数据重新送至目标系统)。本发明在接收第三方系统同步的数据时,先可以走一遍整个数据处理的程序代码逻辑,验证同步过来的数据合法性,验证通过后存到临时表中,同时保存处理日志,最后利用多线程+定时器的方式进行快速处理存储数据。
如图2C所示,为本发明实施例中主要代码的另一个逻辑示意图;如图2D所示,为本发明实施例中主要代码的另一个逻辑示意图;
如图3A所示,为本发明实施例中业务处理的一个代码逻辑示意图;如图3B所示,为本发明实施例中业务处理的另一个代码逻辑示意图;如图3C所示,为本发明实施例中业务处理的另一个代码逻辑示意图;如图3D所示,为本发明实施例中业务处理的另一个代码逻辑示意图;
如图3E所示,为本发明实施例中业务处理的另一个代码逻辑示意图;如图3F所示,为本发明实施例中异常日志记录的一个代码逻辑示意图;如图3G所示,为本发明实施例中异常日志记录的另一个代码逻辑示意图;如图3H所示,为本发明实施例中定时任务调用异常请求重发的一个代码逻辑示意图。
本发明的有益效果是,当前系统需要给目标系统同步数据时,先把需要同步的数据推送给消息队列,这样提高了程序的稳定性,避免高并发时直接请求目标系统接口时服务器压力过大等问题,且方便做集群部署(在不同服务器上启动包含本发明的服务,只需要都监听同一个消息队列即可)。而本发明在作为队列消费者的服务中会存储当前同步请求的数据到数据库中(这里使用的是oracle12c数据库),再经过数据处理,同步给目标服务器。另外,当接收到第三方系统传输过来的数据时以多线程+定时器的方式进行接收快速处理。本发明对同步请求也进行日志记录,对于同步异常或者同步出错的数据,通过定时任务,重新推送,解决目标服务器请求响应不稳定、目标服务异常等问题。
该发明在当前系统调用队列时,降低系统的耦合,方便通过分布式或者集群调用队列。而在消费者处理队列请求时,也可以进行分布式或者集群处理,同时在接收第三方系统的数据时采用多线程技术快速处理,防止了数据积压问题的出现。除此之外,本发明的日志记录可以保证数据同步的准确性,对响应异常的请求进行定时重传处理,从而提高同步请求的成功率,更稳定、高效地同步数据。
如图4所示,为本发明实施例中服务器的一个实施例示意图,可以包括:
接收模块401,用于当前服务器的数据发生更新后,获取同步请求;
处理模块402,用于根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;
发送模块403,用于以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。
可选的,在本发明的一些实施例中,
处理模块402,具体用于将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
可选的,在本发明的一些实施例中,
接收模块401,还用于接收第三方服务器发送的同步数据;
处理模块402,还用于采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;对所述解析处理后的数据进行保存。
可选的,在本发明的一些实施例中,
处理模块402,还用于将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;当本次同步异常或者同步出错时,根据所述日志记录,对所述发生更新的数据进行再次同步处理。
本发明第三方面提供了一种服务器,可以包括:
收发器501,处理器502,存储器503,其中,收发器501,处理器502和存储器503通过总线连接;
存储器503,用于存储操作指令;
收发器501,用于当前服务器的数据发生更新后,获取同步请求;以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理;
处理器502,用于调用所述操作指令,根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据。
可选的,在本发明的一些实施例中,
处理器502,具体用于将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
可选的,在本发明的一些实施例中,
收发器501,还用于接收第三方服务器发送的同步数据;
处理器502,还用于采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;对所述解析处理后的数据进行保存。
可选的,在本发明的一些实施例中,
处理器502,还用于将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;当本次同步异常或者同步出错时,根据所述日志记录,对所述发生更新的数据进行再次同步处理。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种数据同步的方法,其特征在于,包括:
当前服务器的数据发生更新后,获取同步请求;
所述当前服务器根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;
所述当前服务器将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;
所述当前服务器对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;
所述当前服务器以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。
2.根据权利要求1所述的方法,其特征在于,所述将发生更新的数据向消息队列发送,包括:
将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述当前服务器接收第三方服务器发送的同步数据;
所述当前服务器采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;
所述当前服务器对所述解析处理后的数据进行保存。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:
所述当前服务器将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;
当本次同步异常或者同步出错时,根据所述日志记录,所述当前服务器对所述发生更新的数据进行再次同步处理。
5.一种服务器,其特征在于,包括:
接收模块,用于当前服务器的数据发生更新后,获取同步请求;
处理模块,用于根据所述同步请求将发生更新的数据向消息队列发送,其中,所述发生更新的数据包括发生修改的数据或者发生添加的数据或者发生删除的数据;将所述消息队列接收的所述发生更新的数据缓存到本地数据库中,其中,所述本地数据库为所述当前服务器的本地数据库或者预置的第三方数据库,所述发生更新的数据包括至少一种业务信息;对所述发生更新的数据,通过判断所述发生更新的数据中包括的至少一种业务信息分发到对应不同的业务功能去处理,得到处理后的数据;
发送模块,用于以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理。
6.根据权利要求5所述的服务器,其特征在于,
所述处理模块,具体用于将修改的数据或者发生添加的数据或者发生删除的数据,以map形式向消息队列发送。
7.根据权利要求5所述的服务器,其特征在于,
所述接收模块,还用于接收第三方服务器发送的同步数据;
所述处理模块,还用于采用多线程技术对所述同步数据进行解析处理,得到解析处理后的数据;对所述解析处理后的数据进行保存。
8.根据权利要求5-7中任一项所述的服务器,其特征在于,
所述处理模块,还用于将所述同步请求进行日志记录,所述日志记录包括本次同步的相关信息;当本次同步异常或者同步出错时,根据所述日志记录,对所述发生更新的数据进行再次同步处理。
9.一种服务器,其特征在于,包括:
收发器,处理器,存储器,其中,所述收发器,所述处理器和所述存储器通过总线连接;
所述存储器,用于存储操作指令;
所述收发器,用于当前服务器的数据发生更新后,获取同步请求;以JSON的形式将所述处理后的数据向目标服务器发送,所述处理后的数据用于所述目标服务器进行处理;
所述处理器,用于调用所述操作指令,执行如权利要求1-4中任一项所述的数据同步的方法的步骤。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的数据同步的方法的步骤。
CN201910561209.8A 2019-06-26 2019-06-26 一种数据同步的方法及服务器 Pending CN110502572A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910561209.8A CN110502572A (zh) 2019-06-26 2019-06-26 一种数据同步的方法及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910561209.8A CN110502572A (zh) 2019-06-26 2019-06-26 一种数据同步的方法及服务器

Publications (1)

Publication Number Publication Date
CN110502572A true CN110502572A (zh) 2019-11-26

Family

ID=68585712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910561209.8A Pending CN110502572A (zh) 2019-06-26 2019-06-26 一种数据同步的方法及服务器

Country Status (1)

Country Link
CN (1) CN110502572A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111324668A (zh) * 2020-02-18 2020-06-23 中国联合网络通信集团有限公司 数据库数据同步处理方法、装置及存储介质
CN111831748A (zh) * 2020-06-30 2020-10-27 北京小米松果电子有限公司 数据同步方法、装置及存储介质
CN112187916A (zh) * 2020-09-27 2021-01-05 中国银联股份有限公司 一种跨系统的数据同步方法与装置
CN112579704A (zh) * 2020-12-24 2021-03-30 深圳市科力锐科技有限公司 数据反向同步方法、装置、系统、镜像服务器和存储介质
CN112769940A (zh) * 2021-01-13 2021-05-07 厦门熵基科技有限公司 一种用于多门禁系统的数据同步方法、装置、设备和介质
CN113722401A (zh) * 2021-11-04 2021-11-30 树根互联股份有限公司 数据缓存方法、装置、计算机设备及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483651A (zh) * 2009-01-09 2009-07-15 南京联创科技股份有限公司 基于map队列的数据传送方法
CN103559120A (zh) * 2013-11-13 2014-02-05 北京网秦天下科技有限公司 日志记录方法以及服务器
CN107180116A (zh) * 2017-06-28 2017-09-19 努比亚技术有限公司 一种数据同步处理方法、移动终端以及计算机可读存储介质
CN107783975A (zh) * 2016-08-24 2018-03-09 北京京东尚科信息技术有限公司 分布式数据库同步处理的方法和装置
CN108076098A (zh) * 2016-11-16 2018-05-25 北京京东尚科信息技术有限公司 一种业务处理方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483651A (zh) * 2009-01-09 2009-07-15 南京联创科技股份有限公司 基于map队列的数据传送方法
CN103559120A (zh) * 2013-11-13 2014-02-05 北京网秦天下科技有限公司 日志记录方法以及服务器
CN107783975A (zh) * 2016-08-24 2018-03-09 北京京东尚科信息技术有限公司 分布式数据库同步处理的方法和装置
CN108076098A (zh) * 2016-11-16 2018-05-25 北京京东尚科信息技术有限公司 一种业务处理方法及系统
CN107180116A (zh) * 2017-06-28 2017-09-19 努比亚技术有限公司 一种数据同步处理方法、移动终端以及计算机可读存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111324668A (zh) * 2020-02-18 2020-06-23 中国联合网络通信集团有限公司 数据库数据同步处理方法、装置及存储介质
CN111324668B (zh) * 2020-02-18 2023-11-21 中国联合网络通信集团有限公司 数据库数据同步处理方法、装置及存储介质
CN111831748A (zh) * 2020-06-30 2020-10-27 北京小米松果电子有限公司 数据同步方法、装置及存储介质
CN111831748B (zh) * 2020-06-30 2024-04-30 北京小米松果电子有限公司 数据同步方法、装置及存储介质
CN112187916A (zh) * 2020-09-27 2021-01-05 中国银联股份有限公司 一种跨系统的数据同步方法与装置
CN112187916B (zh) * 2020-09-27 2023-12-05 中国银联股份有限公司 一种跨系统的数据同步方法与装置
CN112579704A (zh) * 2020-12-24 2021-03-30 深圳市科力锐科技有限公司 数据反向同步方法、装置、系统、镜像服务器和存储介质
CN112579704B (zh) * 2020-12-24 2024-04-09 深圳市科力锐科技有限公司 数据反向同步方法、装置、系统、镜像服务器和存储介质
CN112769940A (zh) * 2021-01-13 2021-05-07 厦门熵基科技有限公司 一种用于多门禁系统的数据同步方法、装置、设备和介质
CN113722401A (zh) * 2021-11-04 2021-11-30 树根互联股份有限公司 数据缓存方法、装置、计算机设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN110502572A (zh) 一种数据同步的方法及服务器
CN109949111B (zh) 电子票据标识分配方法、电子票据生成方法、装置及系统
CN101313495B (zh) 数据同步方法、系统及装置
CN105515872B (zh) 配置信息的更新方法、装置及系统
CN110417842A (zh) 用于网关服务器的故障处理方法和装置
CN108376106A (zh) 一种区块链消息反馈方法及系统
CN104283926B (zh) 一种数据同步方法、装置及服务器
CN109586969A (zh) 内容分发网络容灾方法、装置、计算机设备及存储介质
CN105205143B (zh) 一种文件存储及处理方法、设备和系统
CN105162879B (zh) 实现多机房数据一致性的方法、装置及系统
CN110351323A (zh) 一种应用系统的参数管理方法和装置
CN109905286A (zh) 一种监控设备运行状态的方法和系统
CN101207580A (zh) 即时通信平台和业务平台同步增删联系人的方法及系统
CN110019539A (zh) 一种数据仓库的数据同步的方法和装置
CN110837409A (zh) 一种定时执行任务的方法和系统
CN111221861B (zh) 一种本地缓存与数据库数据同步方法和装置
CN106911769B (zh) 云平台路由数据的处理方法和云平台的物理服务器
CN110083504B (zh) 分布式任务的运行状态监控方法及装置
CN113076186B (zh) 任务处理的方法、装置、电子设备和存储介质
CN110297822A (zh) 面向区块链的密钥管理方法、装置、设备及存储介质
CN107818027B (zh) 名字节点主备切换的方法、装置和分布式系统
CN110113495A (zh) App的远程控制方法、装置、电子设备及系统
CN110389976A (zh) 一种多接口数据的调度方法和装置
CN106293996B (zh) 数据同步方法、主设备、备份设备和系统
CN105119944B (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