[发明专利]一种消息通信方法和装置在审
申请号: | 202110781013.7 | 申请日: | 2021-07-09 |
公开(公告)号: | CN113641511A | 公开(公告)日: | 2021-11-12 |
发明(设计)人: | 聂诗超;周新宇;林清山 | 申请(专利权)人: | 阿里云计算有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 赵娟 |
地址: | 310024 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 消息 通信 方法 装置 | ||
本申请实施例提供了一种消息通信方法和装置,所述方法包括:在一节点的主代理服务器接收到生产者发送的消息后,与另外至少一节点的副代理服务器进行消息同步;所述主代理服务器向消费者发送消息,或另外一个节点的副服务器向消费者发送消息。通过提出每个节点包括一主代理服务器以及至少一副代理服务器的新型消息队列高可用架构,实现单点多Broker,提高消息代理服务集群中节点的利用率,减少节点资源的浪费;且由于每个节点均包括一主代理服务器,能够保证每个节点的能力对等,以及通过不同节点间主、副代理服务器的消息同步,在保证每个节点消息一致性的前提下,能够实现节点消息传输时,特别是节点出现故障情况下的无选主过程。
技术领域
本申请涉及通信技术领域,特别是涉及一种消息通信方法和一种消息通信装置。
背景技术
分布式系统(Distributed System)是一种建立在网络之上的软件系统,对于用户而言其可以相当于单个相关系统,但实际上是若干独立计算机的集合,其中,用于组成系统的独立计算机在地域上可以是分散的,且整个系统的功能可以通过分散在各个节点上实现。
消息队列中间件(例如Rocket MQ(Rocket Message Queue,指的是一种开源的消息中间件)、ONS(OpenNotification Service,开放消息服务,基于开源消息中间件RocketMQ实现)、Kafka(是一种开源分布式高并发消息中间件)等)是分布式系统中重要的组件,其主要用于解决分布式系统之间消息传递的问题,消息代理是一种用于消息验证、变换、路由的架构模式,虽然不同的消息中间件架构和实现各不相同,但是大部分都实现了Broker,其为消息系统中的代理服务器,可以具有与消息生产者和消息消费者进行消息收发的逻辑。目前所实现的中间件架构中,各个Broker均独占一个消息代理服务,在Broker正常运行时,备用代理服务器仅需从主代理服务器同步消息,其资源利用率在大部分时间都处于较低水平,从而导致一定程度的资源浪费。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种消息通信方法和相应的一种消息通信装置。
本申请实施例公开了一种消息通信方法,应用于消息系统,所述消息系统包括生产者、消息代理服务集群和消费者,所述消息代理服务集群包括多个节点,每个节点包括每个副本组的一个副本,且包括属于不同副本组的一主代理服务器以及至少一副代理服务器,所述方法包括:
在一节点的主代理服务器接收到生产者发送的消息后,与另外至少一节点的副代理服务器进行消息同步;
所述主代理服务器向消费者发送消息,或另外一个节点的副服务器向消费者发送消息。
可选地,所述与另外至少一节点的副代理服务器进行消息同步,包括:
向与所述主代理服务器属于同一副本组的至少一个副代理服务器进行消息同步;其中,属于同一副本组的各个副代理服务器以及主代理服务器之间位于不同节点。
可选地,所述向与所述主代理服务器属于同一副本组的至少一个副代理服务器同步所述生产者发送的消息,包括:
配置与所述主代理服务器进行消息同步的代理服务器数量;
按照所配置的代理服务器数量,向属于同一副本组的代理服务器同步所述生产者发送的消息。
可选地,所述方法还包括:
另外一节点的副代理服务器向所述主代理服务器同步当前元数据。
可选地,所述另外一节点的副代理服务器向所述主代理服务器同步当前元数据,包括:
通过与所述主代理服务器属于同一副本组的一副代理服务器,在所述主代理服务器故障修复后,向所述主代理服务器同步当前元数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里云计算有限公司,未经阿里云计算有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110781013.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:控制离心分离器的方法和离心分离器
- 下一篇:一种智能手术室器材、敷料管理系统