缓存数据同步方法、装置、设备及架构制造方法及图纸

技术编号:39252311 阅读:8 留言:0更新日期:2023-10-30 12:04
本发明专利技术涉及数据同步技术领域,公开了一种缓存数据同步方法、装置、设备及架构,该方法包括:获取其他应用节点基于缓存预热请求反馈的全量数据信息;根据全量数据信息进行缓存预热处理;在缓存预热处理完成后,若本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至对等节点集群中的剩余本地缓存组件。相较于现有技术中通过本地式缓存方式引入缓存容易带来数据不一致的问题,本发明专利技术在进行缓存预热处理后,若本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至对等节点集群的剩余本地缓存组件,从而解决了通过本地式缓存方式引入缓存,在数据发生变更时会出现数据不一致问题的技术问题。生变更时会出现数据不一致问题的技术问题。生变更时会出现数据不一致问题的技术问题。

【技术实现步骤摘要】
缓存数据同步方法、装置、设备及架构


[0001]本专利技术涉及数据同步
,尤其涉及一种缓存数据同步方法、装置、设备及架构。

技术介绍

[0002]缓存技术是指针对访问频繁且变更频率较低的数据,由数据库加载至缓存以提升访问效率、降低数据库压力的技术。引入缓存技术是软件系统中提升系统性能的常见做法,尤其是面向C端用户的系统,为了缩短系统响应时间以提升用户体验,缓存的引入已成为行业较优选择。
[0003]目前分布式系统架构中缓存的引入可以采用本地式缓存来实现,但本地式缓存在缓存数据更新时一般由其中一台应用服务器进行处理,以实现本台应用服务器缓存的更新和数据库中的数据更新,而其他应用服务器缓存只能通过数据过期重新加载数据或手工方式清除缓存,从而容易带来数据不一致的问题。

技术实现思路

[0004]本专利技术的主要目的在于提供了一种缓存数据同步方法、装置、设备及架构,旨在解决现有技术中通过本地式缓存方式引入缓存,在数据发生变更时会出现数据不一致问题的技术问题。
[0005]为实现上述目的,本专利技术提供了一种缓存数据同步方法,所述缓存数据同步方法应用于应用节点,所述应用节点中设置有本地缓存组件,不同应用节点的本地缓存组件构成对等节点集群,所述方法包括:
[0006]获取其他应用节点基于缓存预热请求反馈的全量数据信息;
[0007]根据所述全量数据信息进行缓存预热处理;
[0008]在所述缓存预热处理完成后,若所述本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件。
[0009]可选地,所述获取其他应用节点基于缓存预热请求反馈的全量数据信息的步骤之前,还包括:
[0010]在当前运行状态为启动状态时,获取所述本地缓存组件对应的节点标识信息和节点缓存版本信息;
[0011]基于所述节点标识信息和所述节点缓存版本信息生成缓存预热请求,并通过预设数据拉取方法向至少一个其他应用节点发送所述缓存预热请求。
[0012]可选地,所述获取其他应用节点基于缓存预热请求反馈的全量数据信息的步骤,包括:
[0013]获取其他应用节点在接收到所述缓存预热请求时,通过预设数据推送方法反馈全量数据信息,所述预设数据推送方法用于推送全量数据信息。
[0014]可选地,所述根据所述全量数据信息进行缓存预热处理的步骤,包括:
[0015]在所述其他应用节点的数量超过预设数量阈值时,从所述全量数据信息中获取所述其他应用节点中第一应用节点对应的第一全量数据信息,并对所述第一全量数据信息进行存储,所述第一应用节点为第一个发送全量数据信息的应用节点;
[0016]从所述全量数据信息中获取所述其他应用节点中剩余应用节点对应的第二全量数据信息;
[0017]将所述第一全量数据信息中的第一节点缓存版本信息和所述第二全量数据信息中的第二节点缓存版本信息进行比较;
[0018]在所述第一节点缓存版本信息和所述第二节点缓存版本信息满足预设覆盖条件时,通过所述第二全量数据信息对所述第一全量数据信息进行信息覆盖。
[0019]可选地,所述获取其他应用节点基于缓存预热请求反馈的全量数据信息的步骤之前,还包括:
[0020]创建目标Netty服务器,并通过所述节点标识信息与所述目标Netty服务器进行关联;
[0021]所述若所述本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件的步骤,包括:
[0022]若所述本地缓存组件中的业务缓存数据发生变更,则通过所述目标Netty服务器将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件,所述剩余本地缓存组件中关联有对应的Netty服务器。
[0023]可选地,所述若所述本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件的步骤,包括:
[0024]若所述本地缓存组件中的业务缓存数据发生变更,则将所述本地缓存组件标记为感染组件;
[0025]将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件,所述剩余本地缓存组件在完成数据同步后被标记为感染组件;
[0026]其中,被标记为感染组件的本地缓存组件通过感染未进行数据同步的其他应用节点中的本地缓存组件以进行数据同步。
[0027]可选地,所述对等节点集群中所有本地缓存组件的业务缓存数据通过预设集合类进行存储,所述业务缓存数据以键值对的形式存储。
[0028]此外,为实现上述目的,本专利技术还提出一种缓存数据同步装置,所述装置包括:
[0029]信息获取模块,用于获取其他应用节点基于缓存预热请求反馈的全量数据信息;
[0030]缓存预热处理模块,用于根据所述全量数据信息进行缓存预热处理;
[0031]数据同步模块,用于在所述缓存预热处理完成后,若所述本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件。
[0032]此外,为实现上述目的,本专利技术还提出一种缓存数据同步设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的缓存数据同步程序,所述缓存数据同步程序配置为实现如上文所述的缓存数据同步方法的步骤。
[0033]此外,为实现上述目的,本专利技术还提出一种缓存数据同步架构所述缓存数据同步架构包括:本地缓存组件;所述本地缓存组件包括:缓存数据服务模块、基础数据管理模块
和节点信息同步模块;
[0034]所述缓存数据服务模块,用于对本地缓存的业务缓存数据进行数据变更;
[0035]所述基础数据管理模块,用于在所述业务缓存数据发生变更时,获取缓存变更版本号和变更数据的同步状态;
[0036]所述节点信息同步模块,用于基于所述缓存变更版本号和所述同步状态对对等节点集群中的剩余本地缓存组件进行数据同步,所述对等节点集群由不同的应用节点中的缓存组件构成。
[0037]在本专利技术中,公开了应用节点,应用节点中设置有本地缓存组件,不同应用节点的本地缓存组件构成对等节点集群,包括:获取其他应用节点基于缓存预热请求反馈的全量数据信息;根据全量数据信息进行缓存预热处理;在缓存预热处理完成后,若本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至对等节点集群中的剩余本地缓存组件;相较于现有技术中通过本地式缓存方式引入缓存容易带来数据不一致的问题,由于本专利技术在基于全量数据信息进行缓存预热处理后,若本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至对等节点集群的剩余本地缓存组件,从而解决了现有技术中通过本地式缓存方式引入缓存,在数据发生变更时会出现数据不一致问题的技术问题。
附图说明
[0038]图1为本专利技术实施例方案涉及的硬件运行环境的缓存数据同步设备的结构示意图;
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存数据同步方法,其特征在于,所述缓存数据同步方法应用于应用节点,所述应用节点中设置有本地缓存组件,不同应用节点的本地缓存组件构成对等节点集群,所述方法包括:获取其他应用节点基于缓存预热请求反馈的全量数据信息;根据所述全量数据信息进行缓存预热处理;在所述缓存预热处理完成后,若所述本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至所述对等节点集群中的剩余本地缓存组件。2.如权利要求1所述的缓存数据同步方法,其特征在于,所述获取其他应用节点基于缓存预热请求反馈的全量数据信息的步骤之前,还包括:在当前运行状态为启动状态时,获取所述本地缓存组件对应的节点标识信息和节点缓存版本信息;基于所述节点标识信息和所述节点缓存版本信息生成缓存预热请求,并通过预设数据拉取方法向至少一个其他应用节点发送所述缓存预热请求。3.如权利要求1所述的缓存数据同步方法,其特征在于,所述获取其他应用节点基于缓存预热请求反馈的全量数据信息的步骤,包括:获取其他应用节点在接收到所述缓存预热请求时,通过预设数据推送方法反馈全量数据信息,所述预设数据推送方法用于推送全量数据信息。4.如权利要求1所述的缓存数据同步方法,其特征在于,所述根据所述全量数据信息进行缓存预热处理的步骤,包括:在所述其他应用节点的数量超过预设数量阈值时,从所述全量数据信息中获取所述其他应用节点中第一应用节点对应的第一全量数据信息,并对所述第一全量数据信息进行存储,所述第一应用节点为第一个发送全量数据信息的应用节点;从所述全量数据信息中获取所述其他应用节点中剩余应用节点对应的第二全量数据信息;将所述第一全量数据信息中的第一节点缓存版本信息和所述第二全量数据信息中的第二节点缓存版本信息进行比较;在所述第一节点缓存版本信息和所述第二节点缓存版本信息满足预设覆盖条件时,通过所述第二全量数据信息对所述第一全量数据信息进行信息覆盖。5.如权利要求2所述的缓存数据同步方法,其特征在于,所述获取其他应用节点基于缓存预热请求反馈的全量数据信息的步骤之前,还包括:创建目标Netty服务器,并通过所述节点标识信息与所述目标Netty服务器进行关联;所述若所述本地缓存组件中的业务缓存数据发生变更,则将变更后的业务缓存数据同步至所述对等节点集群中的剩余...

【专利技术属性】
技术研发人员:连静陈明申志敏
申请(专利权)人:中国移动通信集团有限公司
类型:发明
国别省市:

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

1