[发明专利]一种消息备份方法、装置、电子设备及计算机存储介质在审
申请号: | 202010434032.8 | 申请日: | 2020-05-21 |
公开(公告)号: | CN113703954A | 公开(公告)日: | 2021-11-26 |
发明(设计)人: | 胡宗棠 | 申请(专利权)人: | 中移(苏州)软件技术有限公司;中国移动通信集团有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 姚璐;张颖玲 |
地址: | 215163 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 消息 备份 方法 装置 电子设备 计算机 存储 介质 | ||
本申请公开了一种消息备份方法、装置、电子设备及计算机可读存储介质。所述方法包括:通过源任务线程从源消息队列集群中获取消息,将所述消息发送至运行时进程的内存中;通过目标任务线程从所述运行时进程的内存中获取所述消息,将所述消息转储至目标消息队列集群中;其中,所述源消息队列集群和所述目标消息队列集群支持的数据格式和/或传输协议不同。本申请能够实现将源消息队列集群中的消息复制至目标消息队列集群中,且通过利用源任务线程和目标任务线程,能够将从源消息队列集群拉取消息并存储至运行时进程的内存,和将运行时进程中存储的消息转发至目标消息队列集群的任务解耦,支持异构类型的消息集群之间的复制备份。
技术领域
本申请涉及通信技术领域,尤其涉及一种消息备份方法、装置、电子设备及计算机存储介质。
背景技术
消息队列(MQ,Message Queue)就是消息在传输过程中用于保存消息的容器,在一次发送接收的通信过程中,其主要充当了“中转站”的角色,在消息队列的内部提供通信路由并保证消息的可靠传递。如果发送消息时接收者不可用,消息队列本身会在一段时间内保留积压的消息,直到可以成功地传递它。消息队列是构建各种重要的业务系统时一款重要的中间件,在对业务系统进行设计、选型和架构搭建时需要考虑消息队列的稳定性、可靠性和可用性。目前,消息队列已经逐渐成为企业IT系统内部通信的核心手段之一,可以说当前绝大部分的大型分布式互联网业务系统都基于消息队列来构建的。消息队列具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列的功能,是异步通信的主要手段之一。
随着分布式协调组件ZooKeeper和Raft算法的出现,多副本特性已经成为消息中间件所必备的一个特性。目前,开源消息队列Kafka采用ZooKeeper组件来实现同一个集群内部多副本之间协调选主节点,做到如果出现某一个或者几个副本节点所在的虚拟机或者容器宕机的情况下,靠ZooKeeper组件依然可以从剩余的副本节点中选出主节点。而开源消息队列RocketMQ则采用了非依赖第三方组件(比如ZooKeeper)的方式,通过自己在存储层实现Raft算法协议来做到选主节点和日志消息复制的目标,以达到同一个集群内各个节点做到高可用的目的。但上述两款开源中间件的多副本特性,只是保证了同一个集群内部消息的高可用,但如果出现整个消息队列集群节点均宕机的情况,消息队列服务依旧无法对外提供消息服务。
在一种相关方案中,采用开源版本Kafka的MirrorMaker实现跨消息队列集群的同步复制。该开源版本消息队列组件的整体方案通过采用一个中间进程实现跨消息队列集群的消息复制与同步,该中间进程既是消息的消费者,也是消息的发送者。在采用此实施方式时,用于跨集群消息队列同步的进程为单进程实例,当该单进程实例出现内存溢出、进程僵死、所部署的机器宕机和进程中的队列阻塞等异常情况时,消息跨集群复制与备份将无法继续进行,严重影响消息队列集群的可用性。而且,该实施方式中消息复制与备份都在同一个进程中完成,效率较低,无法像分布式集群部署那样充分利用各个节点任务调度的优势,实现消息复制和备份整体的高吞吐量、低延迟和高并发特点。
在另一种相关方案中,采用开源版本ActiveMQ的NetworkBridge实现跨集群消息队列的同步复制。该开源版本的消息队列组件目前只能支持同类型消息队列集群的消息备份复制,即仅限于支持源消息队列和目标待备份的集群均为ActiveMQ的消息队列集群的跨集群消息的复制和备份。该方案不支持异构类型的消息队列集群的消息复制与备份,如果用户有把源消息队列集群的消息迁移、备份至异构类型消息队列集群,则该方案是无法支持和实现的。比如,用户使用的原始消息队列为ActiveMQ消息队列,而待备份、迁移和复制的目标消息队列集群为RocketMQ或者Kafka时,则该方法无法实现跨集群消息的复制和备份。
综上所述,目前的跨消息队列集群的消息复制与备份方案存在可靠性和可用性较低、无法实现异构类型的消息队列集群之间的消息迁移和备份等问题。
发明内容
为解决上述技术问题,本申请实施例提供了一种消息备份方法及装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移(苏州)软件技术有限公司;中国移动通信集团有限公司,未经中移(苏州)软件技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010434032.8/2.html,转载请声明来源钻瓜专利网。