一种节点间的缓存同步方法、装置、终端及介质制造方法及图纸

技术编号:36795070 阅读:12 留言:0更新日期:2023-03-08 23:00
本申请公开了一种节点间的缓存同步方法、装置、终端及介质,本申请提供的方案通过数据异步复制的方式,通过节点本地的数据库单元将修改的数据异步复制到其它节点的数据库单元,由各个节点根据本地数据库单元的数据变化各自对本地的缓存数据进行更新,相比于传统方法通过http请求进行更新的方式,本方案的实施对网络状态的依赖性更低,可靠性更强。可靠性更强。可靠性更强。

【技术实现步骤摘要】
一种节点间的缓存同步方法、装置、终端及介质


[0001]本申请涉及计算机
,尤其涉及一种节点间的缓存同步方法、装置、终端及介质。

技术介绍

[0002]随着用户规模增长,对系统访问的可用性要求越来越高,在业务架构不断优化下,会选择将一整套服务部署在多个地理位置的机房,包含独立的分布式缓存集群以及数据库集群,每一个单独的机房可以称为一个节点,多节点多活已成分布式项目的一种重要的解决方案。
[0003]当前多节点缓存同步大多数在不同节点创建一个服务,节点之间使用http接口进行数据交互后再修改缓存来达到同步的目的,但由于http请求由于网络、对应节点服务状态、服务器负载等情况,容易出现请求不可达的情况,从而造成两边缓存不一致,缓存同步可靠性低。

技术实现思路

[0004]本申请提供了一种节点间的缓存同步方法、装置、终端及介质,用于解决现有的多节点缓存同步方法可靠性低的技术问题。
[0005]为解决上述技术问题,本申请第一方面提供了一种节点间的缓存同步方法,包括:
[0006]监听节点内数据库单元的数据变化;
[0007]当监听到所述数据库单元发生数据变化时,由所述数据库单元通过异步复制方式,将所述变化的数据复制到其它节点的数据库单元,以使得其它节点在监听到本地的数据库单元发生数据变化时,将变化的数据推送到本地的消息队列,以根据所述变化的数据对缓存数据进行更新。
[0008]优选地,所述异步复制方式具体为MYSQL原生异步复制。
[0009]优选地,所述根据所述变化的数据对缓存数据进行更新具体包括:
[0010]根据所述消息队列中的数据,对所述节点的同步服务订阅数据进行变更,通过消费变更后的数据,对所述节点的缓存数据进行重建。
[0011]本申请第二方面提供了一种节点间的缓存同步装置,包括:控制单元、数据库单元、消息队列以及缓存更新单元;
[0012]所述控制单元,用于监听节点内数据库单元的数据变化,且当监听到所述数据库单元发生数据变化时,将变化的数据推送到预设的消息队列,以使得缓存更新单元根据所述变化的数据对缓存数据进行更新;
[0013]所述数据库单元,用于当监听到所述数据库单元发生数据变化时,通过异步复制方式,将所述变化的数据复制到其它节点的数据库单元,以使得其它节点在监听到本地的数据库单元发生数据变化时,将变化的数据推送到本地的消息队列,以根据所述变化的数据对缓存数据进行更新。
[0014]优选地,所述异步复制方式具体为MYSQL原生异步复制。
[0015]优选地,所述缓存更新单元具体用于:
[0016]根据所述消息队列中的数据,对所述节点的同步服务订阅数据进行变更,通过消费变更后的数据,对所述节点的缓存数据进行重建。
[0017]本申请第三方面提供了一种节点间的缓存同步终端,包括:存储器和处理器;
[0018]所述存储器用于存储程序代码,所述程序代码与本申请第一方面提供的一种节点间的缓存同步方法相对应;
[0019]所述处理器用于执行所述程序代码。
[0020]本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中保存了程序代码,所述程序代码与本申请第一方面提供的一种节点间的缓存同步方法相对应。
[0021]从以上技术方案可以看出,本申请具有以下优点:
[0022]本申请提供的方案通过数据异步复制的方式,通过节点本地的数据库单元将修改的数据异步复制到其它节点的数据库单元,由各个节点根据本地数据库单元的数据变化各自对本地的缓存数据进行更新,相比于传统方法通过http请求进行更新的方式,本方案的实施对网络状态的依赖性更低,可靠性更强。
附图说明
[0023]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0024]图1为本申请提供的一种节点间的缓存同步方法的一个实施例的流程示意图。
[0025]图2为本申请提供的一种节点间的缓存同步装置的一个实施例的结构示意图。
具体实施方式
[0026]本申请实施例提供了一种节点间的缓存同步方法、装置、终端及介质,用于解决现有的多节点缓存同步方法可靠性低的技术问题。
[0027]为使得本申请的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0028]首先是本申请提供的一种节点间的缓存同步方法的详细说明。
[0029]请参阅图1,本申请提供的一种节点间的缓存同步方法,包括:
[0030]步骤101、监听节点内数据库单元的数据变化;
[0031]步骤102、当监听到数据库单元发生数据变化时,由数据库单元通过异步复制方式,将变化的数据复制到其它节点的数据库单元,以使得其它节点在监听到本地的数据库单元发生数据变化时,将变化的数据推送到本地的消息队列,以根据变化的数据对缓存数
据进行更新。
[0032]需要说明的是,每个节点都有搭建控制单元,监听各自节点数据库单元的binlog,在本节点有对数据库表做修改后,控制单元则把当前主节点写操作的语句监听后发送到当前主节点的消息队列,再根据消息队列中的数据对缓存数据进行更新,同时,更改的数据则由数据库单元通过数据异步复制方式,同步到其他节点的数据库单元,而其他节点在数据库同步后,由各自节点的控制单元将监听到当前节点写操作的语句发送到当前消息队列,按照相同的流程完成缓存数据的更新。相比于传统方法通过http请求进行更新的方式,本方案的实施对网络状态的依赖性更低,可靠性更强。
[0033]进一步地,异步复制方式具体为MYSQL原生异步复制。
[0034]进一步地,根据变化的数据对缓存数据进行更新具体包括:
[0035]根据消息队列中的数据,对节点的同步服务订阅数据进行变更,通过消费变更后的数据,对节点的缓存数据进行重建。
[0036]需要说明的是,当节点有部分数据进行了修改,此时节点的数据库表数据产生了变化,节点本地的控制单元监听到了数据库表数据的变化后推送到消息队列,节点的同步服务订阅表数据的变更,消费变更的消息后对节点相应的缓存进行重建。
[0037]以上内容便是本申请提供的一种节点间的缓存同步方法的实施例的详细说明,下面为本申请提供的一种节点间的缓存同步装置的实施例的详细说明。
[0038]请参阅图2,本申请第二方面提供了一种节点间的缓存同步装置,包括:控制单元1、数据库单元2、消本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种节点间的缓存同步方法,其特征在于,包括:监听节点内数据库单元的数据变化;当监听到所述数据库单元发生数据变化时,由所述数据库单元通过异步复制方式,将所述变化的数据复制到其它节点的数据库单元,以使得其它节点在监听到本地的数据库单元发生数据变化时,将变化的数据推送到本地的消息队列,以根据所述变化的数据对缓存数据进行更新。2.根据权利要求1所述的一种节点间的缓存同步方法,其特征在于,所述异步复制方式具体为MYSQL原生异步复制。3.根据权利要求1所述的一种节点间的缓存同步方法,其特征在于,所述根据所述变化的数据对缓存数据进行更新具体包括:根据所述消息队列中的数据,对所述节点的同步服务订阅数据进行变更,通过消费变更后的数据,对所述节点的缓存数据进行重建。4.一种节点间的缓存同步装置,其特征在于,包括:控制单元、数据库单元、消息队列以及缓存更新单元;所述控制单元,用于监听节点内数据库单元的数据变化,且当监听到所述数据库单元发生数据变化时,将变化的数据推送到预设的消息队列,以使得缓存更新单元根据所述变化的数据对缓存数据进行...

【专利技术属性】
技术研发人员:杨方维王刚王家宾黄训涛陈剑恒韦盖华梁智鸿
申请(专利权)人:天翼数字生活科技有限公司
类型:发明
国别省市:

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

1