系统基表同步方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:18621287 阅读:33 留言:0更新日期:2018-08-08 00:25
本申请涉及一种系统基表同步方法、系统、计算机设备和存储介质。所述方法包括:接收多个目标系统发送的系统基表同步请求;系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据系统标识对系统密钥进行验证;当系统密钥验证通过时,获取与系统标识对应的系统基表的基表数据;将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应;系统基表同步响应用于指示相应的目标系统从分布式消息队列中获取基表数据。采用本方法能够提高系统基表同步效率。

System base table synchronization method, device, computer equipment and storage medium

The application relates to a system base table synchronization method, system, computer equipment and storage medium. The methods described include receiving system base table synchronization requests sent by multiple target systems; the system base table synchronization request contains the system identity and system key of the corresponding target system; the system key is verified according to the system identity; and the base table of the system base table corresponding to the system identity is obtained when the system key verification is passed. The system base table identifier of the base table data and the corresponding system base table is sent to the distributed message queue; the system base table synchronization response is sent to the system base table by the distributed message queue; the system base table synchronization response is used to indicate the corresponding target system obtained from the distributed message queue. Take the base table data. This method can improve the synchronization efficiency of the system base table.

【技术实现步骤摘要】
系统基表同步方法、装置、计算机设备和存储介质
本申请涉及数据库管理
,特别是涉及一种系统基表同步方法、装置、计算机设备和存储介质。
技术介绍
系统基表是指系统数据库中用于存储特定基表数据的实体表,实体表是各种数据管理对象所对应的表,也称基础表、数据表。通常每个系统都会有自己的一套系统基表,因此每个系统都需要相关人员对基表数据进行维护。当系统需要对接时,需要同步不同系统中的系统基表。然而,虽然不同系统中会存在相同的系统基表,但是由于在每个系统中基表数据的维护顺序、方式不同,在同一时刻不同系统中相同系统基表中的基表数据往往会存在差异,此时系统基表同步会导致基表数据错乱。比如说不同系统中针对同一城市的编码不同,会导致系统对接失败。因此,系统基表同步的效率较低。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够提高系统基表同步效率的系统基表同步方法、装置、计算机设备和存储介质。一种系统基表同步方法,所述方法包括:接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据所述系统标识对所述系统密钥进行验证;当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。在其中一个实施例中,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据所述第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。在其中一个实施例中,所述根据所述系统标识对所述系统密钥进行验证,包括:查找所述数据库中与所述系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与所述系统基表同步请求中包含的系统密钥一致时,则判定所述系统密钥验证通过。在其中一个实施例中,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;所述系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;所述通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应,包括:通过所述分布式消息队列向与所述系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。在其中一个实施例中,所述方法还包括:当与所述系统标识对应的系统基表中存在基表更新数据时,则将所述基表更新数据打包成多个JSON子数据包;通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中。在其中一个实施例中,所述通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中,包括:将所述多个JSON子数据包和相应系统基表的系统基表标识发送至所述分布式消息队列中;统计所有JSON子数据包的第一数据包总数,并统计所述分布式消息队列成功接收的JSON子数据包的第二数据包总数;当所述第一数据包总数与所述第二数据包总数相等时,向与所述系统基表标识相应的目标系统发送基表更新响应;所述基表更新响应用于指示相应的目标系统从所述分布式消息队列中获取并解析所述多个JSON子数据包。在其中一个实施例中,在所述统计所有JSON子数据包的第一数据包总数,并统计所述分布式消息队列成功接收的JSON子数据包的第二数据包总数之后,还包括:当所述第一数据包总数与所述第二数据包总数不相等时,删除所述分布式消息队列中的JSON子数据包,并返回将所述多个JSON子数据包和相应系统基表的系统基表标识发送至所述分布式消息队列中的步骤,直至所述第一数据包总数与所述第二数据包总数相等。一种系统基表同步装置,所述装置包括:系统基表同步请求接收模块,用于接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;系统密钥验证模块,用于根据所述系统标识对所述系统密钥进行验证;基表数据获取模块,用于当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;基表数据发送模块,用于将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;系统基表同步响应发送模块,用于通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现上述各个实施例中所述的系统基表同步方法的步骤。一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述各个实施例中所述的系统基表同步方法的步骤。上述系统基表同步方法、装置、计算机设备和存储介质,在接收了多个目标系统发送的系统基表同步请求,并根据系统基表同步请求中包含的系统标识对系统密钥验证通过之后,根据目标系统和系统基表的订阅关系,获取对应系统基表的基表数据。将基表数据发送至分布式消息队列中,并向订阅了该系统基表的目标系统发送系统基表同步响应,使得目标系统能从分布式消息队列中获取订阅的系统基表的基表数据,实现系统基表的同步。通过一个统一的基表服务器对多个目标系统中的系统基表进行管理,通过分布式消息队列根据目标系统和系统基表的订阅关系,下发一次基表数据实现多个目标系统都能获得该基表数据,节约了多个目标系统系统基表同步的时间,提高了系统基表同步的效率。附图说明图1为一个实施例中系统基表同步方法的应用场景图;图2为一个实施例中系统基表同步方法的流程示意图;图3为一个实施例中分布式消息队列的发布订阅模型的示意图;图4为一个实施例中系统基表同步装置的结构框图;图5为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。可以理解,本专利技术所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语的限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本专利技术的范围的情况下,可以将第一数据包总数称为第二数据包总数,且类似地,可将第二数据包总数称为第一数据包总数。第一数据包总数和第二数据包总数两者都是数据包总数,但其不是同一数据包总数。本申请提供的系统基表同步方法,可以应用于如图1所示的应用环境中。其中,系统服务器集群102通过网络与基表服务器104通过网络进行通信。其中,系统服务器集群102可包括第一系统服务器102a、第二系统服务器102b和第三系统服务器102c等多个系统服务器,且每个系统服务器上都可部署相应的一个或多个目标系统。基表服务器104可接收多个目标系统通过系统服务器集群102发送本文档来自技高网...

【技术保护点】
1.一种系统基表同步方法,所述方法包括:接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据所述系统标识对所述系统密钥进行验证;当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。

【技术特征摘要】
1.一种系统基表同步方法,所述方法包括:接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据所述系统标识对所述系统密钥进行验证;当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。2.根据权利要求1所述的方法,其特征在于,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据所述第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。3.根据权利要求2所述的方法,其特征在于,所述根据所述系统标识对所述系统密钥进行验证,包括:查找所述数据库中与所述系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与所述系统基表同步请求中包含的系统密钥一致时,则判定所述系统密钥验证通过。4.根据权利要求1所述的方法,其特征在于,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;所述系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;所述通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应,包括:通过所述分布式消息队列向与所述系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:当与所述系统标识对应的系统基表中存在基表更新数据时,则将所述基表更新数据打包成多个JSON子数据包;通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中。6....

【专利技术属性】
技术研发人员:李依洁刘元勋田庆梅金磊余德礼
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:广东,44

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

1