[发明专利]一种分布式消息队列的存储方法、装置、设备及可读介质有效
申请号: | 202110627991.6 | 申请日: | 2021-06-05 |
公开(公告)号: | CN113438281B | 公开(公告)日: | 2023-02-28 |
发明(设计)人: | 孙俊逸 | 申请(专利权)人: | 济南浪潮数据技术有限公司 |
主分类号: | H04L67/1097 | 分类号: | H04L67/1097;H04L67/1095;H04L41/0631;H04L67/55 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 刘小峰;杨帆 |
地址: | 250000 山东省济南市中国(山东)自由贸易*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 消息 队列 存储 方法 装置 设备 可读 介质 | ||
本发明公开了一种分布式消息队列的存储方法,包括在分布式消息队列中任意一个节点执行以下步骤:响应于接收到消息处理请求,获取消息处理请求的主题,并判断本节点是否为主题的主节点;若是本节点为主题的主节点,将消息处理请求加入优先队列;对优先队列中的消息处理请求进行处理,并向主题的其他主节点发送请求处理响应;以及响应于接收到所有其他主节点返回的请求处理完成标识,向主题的从节点发送数据同步请求。本发明还公开了一种分布式消息队列的存储装置、计算机设备和可读存储介质。本发明通过分布式消息队列节点内部建立交互机制,降低集群的运维成本、人力成本、管理成本,保障业务的稳定运行。
技术领域
本发明涉及存储技术领域,尤其涉及一种分布式消息队列的存储方法、装置、设备及可读介质。
背景技术
作为大数据生态中重要的信息订阅发布服务组件,Kafka组件通常承担着大量的数据流任务,其自身稳定性对于业务的稳定运行至关重要。
Kafka服务引入一致性服务Zookeeper组件作为其Topic元数据存储后端,但多个服务的叠加会导致业务集群不稳定性增加,Kafka与Zookeeper通过RPC(Remote ProcedureCall,远程过程调用)进行Topic元数据交换,随之带来的是网络的不稳定性,由于Kafka服务对网络带宽占用极高,在某些情况下可达到计算网卡带宽的物理上限,从而导致交互响应不及时,此外Zookeeper服务自身的不稳定性也会导致Kafka集群不稳定,交互超时导致Kafka相关请求失败甚至导致Kafka各节点内对于Topic元数据的处理出现一致性问题进而影响业务正常进行。
综上所述,网络问题、交互问题、一致性问题均对实际Topic处理存在影响,导致运维成本、人力成本、时间成本的消耗。
发明内容
有鉴于此,本发明实施例的目的在于提出一种分布式消息队列的存储方法、装置、设备及可读介质,通过分布式消息队列节点内部建立交互机制,解决主题下的网络分区、请求交互和元信息一致性问题,无需调用分布式系统协调内核,降低集群的运维成本、人力成本、管理成本,保障业务的稳定运行。
基于上述目的,本发明实施例的一方面提供了一种分布式消息队列的存储方法,包括在分布式消息队列中任意一个节点执行以下步骤:响应于接收到消息处理请求,获取所述消息处理请求的主题,并判断本节点是否为所述主题的主节点;若是本节点为所述主题的主节点,将所述消息处理请求加入优先队列;对所述优先队列中的所述消息处理请求进行处理,并向所述主题的其他主节点发送请求处理响应;以及响应于接收到所有所述其他主节点返回的请求处理完成标识,向所述主题的从节点发送数据同步请求。
在一些实施方式中,获取所述消息处理请求的主题,并判断本节点是否为所述主题的主节点包括:获取所述消息处理请求的主题,并判断本节点是否为所述主题的节点;若是本节点为所述主题的节点,进一步判断所述本节点是否为所述主题的主节点。
在一些实施方式中,还包括:若是本节点不为所述主题的节点,获取所述主题的主节点列表,并基于所述主节点列表将所述消息处理请求转发给对应的主节点。
在一些实施方式中,还包括:若是本节点不为所述主题的主节点,将所述消息处理请求加入次要队列;响应于对所述本节点的优先队列中其他主题对应的消息请求处理完成,对所述次要队列中的所述消息处理请求进行处理。
在一些实施方式中,对所述优先队列中的所述消息处理请求进行处理,并向所述主题的其他主节点发送请求处理响应包括:对所述优先队列中的所述消息处理请求进行处理,并判断是否接收到所述主题的其他主节点发送的请求处理响应;若是未接收到所述主题的其他主节点发送的请求处理响应,向所述主题的其他主节点发送请求处理响应。
在一些实施方式中,还包括:若是接收到所述主题的其他节点发送的请求处理响应,反馈请求处理完成标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于济南浪潮数据技术有限公司,未经济南浪潮数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110627991.6/2.html,转载请声明来源钻瓜专利网。