消息同步方法、装置、计算机设备、存储介质与流程
- 国知局
- 2024-07-31 23:05:42
本技术涉及消息同步,特别是涉及一种消息同步方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术:
1、灾备,是指在不同的地方部署多个消息队列集群,其中一个地方的集群作为主集群,其他地方的集群作为备集群,正常情况下由主集群提供服务,若主集群出现异常,则由备集群提供相应服务。在部署有多个集群的灾备集群系统中,若主集群出现异常,切换到备集群由备集群提供服务时,需要保证主集群与备集群之间的数据同步,才能保证业务正常运行。
2、相关技术中,将主集群的数据同步到备集群,是通过数据同步工具实现,而数据同步工具需要额外部署,从而增加了灾备集群系统的部署复杂度。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够降低灾备集群系统的部署复杂度的消息同步方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本技术提供了一种数据同步方法,应用于灾备集群系统中的第一消息队列集群,所述灾备集群系统还包括第二消息队列集群,所述第二消息队列集群是所述灾备集群系统中多个消息队列集群中除所述第一消息队列集群之外的消息队列集群,所述第一消息队列集群和所述第二消息队列集群实现通信。所述方法包括:
3、获取待同步消息;
4、基于所述待同步消息,确定所述待同步消息的主题信息;
5、根据所述待同步消息的主题信息,从所述第一消息队列集群中确定所述待同步消息对应的第一处理节点;
6、通过所述第一处理节点将所述待同步消息发送给所述第二消息队列集群的第二处理节点,以指示所述第二消息队列集群根据所述待同步消息进行同步处理,所述第二处理节点用于处理所述待同步消息的消息主题对应的消息。
7、在其中一个实施例中,所述待同步消息包括元数据消息、消费客户端消息以及消费进度消息中的至少一种。
8、在其中一个实施例中,若所述待同步消息包括元数据消息,所述获取待同步消息,包括:
9、创建所述元数据消息对应的元数据主题;
10、记录对元数据的操作动作;
11、按照对所述操作动作的操作顺序,依次生成所述元数据消息;
12、将所述元数据消息保存在所述元数据主题中,并从所述元数据主题中获取所述元数据消息。
13、在其中一个实施例中,所述灾备集群系统还包括消费客户端,所述消费客户端与所述第一消息队列集群实现通信;若所述待同步消息包括消费进度消息,所述获取待同步消息,包括:
14、创建所述消费进度消息对应的消费进度主题;
15、获取所述消费客户端针对订阅消息所发送的消费成功通知;所述订阅消息是指所述消费客户端向所述第一消息队列集群订阅的消息;所述订阅消息包括在所述订阅消息对应的消息主题中的消息标识;
16、基于所述消费成功通知和所述订阅消息的消息标识,生成所述订阅消息的消息主题对应的消费进度消息;
17、将所述消费进度消息保存在所述消费进度主题中,从所述消费进度主题中获取所述消费进度消息。
18、在其中一个实施例中,所述消费客户端与所述第一消息队列集群之间通过消息拦截器实现通信;所述方法还包括:
19、获取所述消息拦截器发送的订阅消息,从所述订阅消息的消息头中获取所述订阅消息的消息标识;所述消息标识是所述消息拦截器拦截所述消费客户端向所述第一消息队列集群所发送的消息,并将所述消息进行标识得到的。
20、在其中一个实施例中,所述基于所述待同步消息确定所述待同步消息的主题信息,包括:
21、基于所述待同步消息的内容,确定所述待同步消息的主题信息。
22、在其中一个实施例中,所述通过所述第一处理节点将所述待同步消息发送给所述第二消息队列集群的第二处理节点,包括:
23、识别所述待同步消息中的源集群标识对应的消息队列集群;所述源集群标识用于表征传输过所述待同步消息的消息队列集群的标识;
24、若所述源集群标识对应的消息队列集群不包括第二消息队列集群,则通过所述第一处理节点的消息复制器将所述待同步消息发送给所述第二处理节点的消息复制器;
25、若所述源集群标识对应的消息队列集群包括第二消息队列集群,则不通过所述第一处理节点将所述待同步消息发送给所述第二消息队列集群的第二处理节点。
26、第二方面,本技术还提供了一种消息同步装置。所述装置包括:
27、消息获取模块,用于获取待同步消息;
28、消息主题模块,用于基于所述待同步消息确定所述待同步消息的主题信息;
29、节点确定模块,用于根据所述待同步消息的主题信息,确定所述待同步消息对应的第一处理节点;
30、消息同步模块,用于通过所述第一处理节点将所述待同步消息发送给第二消息队列集群的第二处理节点,以指示所述第二消息队列集群根据所述待同步消息进行同步处理,所述第二处理节点用于处理所述待同步消息的消息主题对应的消息。
31、第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
32、获取待同步消息;
33、基于所述待同步消息,确定所述待同步消息的主题信息;
34、根据所述待同步消息的主题信息,从所述第一消息队列集群中确定所述待同步消息对应的第一处理节点;
35、通过所述第一处理节点将所述待同步消息发送给所述第二消息队列集群的第二处理节点,以指示所述第二消息队列集群根据所述待同步消息进行同步处理,所述第二处理节点用于处理所述待同步消息的消息主题对应的消息。
36、第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
37、获取待同步消息;
38、基于所述待同步消息,确定所述待同步消息的主题信息;
39、根据所述待同步消息的主题信息,从所述第一消息队列集群中确定所述待同步消息对应的第一处理节点;
40、通过所述第一处理节点将所述待同步消息发送给所述第二消息队列集群的第二处理节点,以指示所述第二消息队列集群根据所述待同步消息进行同步处理,所述第二处理节点用于处理所述待同步消息的消息主题对应的消息。
41、第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
42、获取待同步消息;
43、基于所述待同步消息,确定所述待同步消息的主题信息;
44、根据所述待同步消息的主题信息,从所述第一消息队列集群中确定所述待同步消息对应的第一处理节点;
45、通过所述第一处理节点将所述待同步消息发送给所述第二消息队列集群的第二处理节点,以指示所述第二消息队列集群根据所述待同步消息进行同步处理,所述第二处理节点用于处理所述待同步消息的消息主题对应的消息。
46、上述消息同步方法、装置、计算机设备、存储介质和计算机程序产品,通过获取待同步消息,基于待同步消息,确定待同步消息的主题信息,根据待同步消息的主题信息,从第一消息队列集群中确定待同步消息对应的第一处理节点,通过第一处理节点将待同步消息发送给第二消息队列集群的第二处理节点,以指示第二消息队列集群根据待同步消息进行同步处理,其中,第二处理节点用于处理待同步消息的消息主题对应的消息,可以实现不用额外部署任何数据同步工具,即可实现消息队列集群之间的消息同步,从而降低灾备集群系统的部署复杂度。
本文地址:https://www.jishuxx.com/zhuanli/20240730/195923.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表