首页 > 新闻中心 > 行业新闻

RocketMQ架构是怎么样的

作者:江南体育电子游戏 来源:江南体育app下载 时间:2023-08-01 09:07:15

  这篇文章首要介绍RocketMQ架构是怎么样的,文中介绍的十分具体,具有必定的参考价值,感兴趣的小伙伴们必定要看完!

  RocketMQ是开源的一个分布式音讯中间件。在RocketMQ中包括四个首要人物:nameserver,元数据管理服务;broker,接纳、存储、分发音讯;producer,音讯生产者;consumer,音讯顾客。全体架构如下图

  Broker是音讯存储服务器,一个broker能够包括一个master以及多个slave,master和slave之间构成主备联系。master之间无任何通讯,也就是说rocketmq不会在master之间主动重新分配topic的存储。一个topic能够存储在多个broker上,每个broker上又能够分红多个queue,以下降读写的压力。topic的存储如下图所示,其间topic和broker之间的对应联系是需求管理员人为指定的。producer和consumer会和订阅的topic地点的broker树立长链接,用于拉取和消费音讯。

  Consumer是音讯顾客,rocketmq存在两种音讯消费方法:播送,同一个音讯会发送给一切顾客;集群,同一个音讯只会发送给一个顾客。同一个类型的顾客能够组成一个consumer group.

  RocketMQ的message还支撑tag,能够在发送音讯时指定tag,并按tag进行订阅。broker会把音讯的tag核算成一个hashcode,存储到ConsumeQueue傍边,这样在订阅时就能够快速过滤出包括特定tag的音讯。

  为了支撑音讯的快速写入、读取、按key查找、按tag订阅,rocketmq的音讯存储选用如下架构:

  commitlog用来存储音讯原文,不分topic,按次序append到结尾。关于每个音讯有一个对应的offset,代表在commitlog中的偏移量。

  以上是“RocketMQ架构是怎么样的”这篇文章的一切内容,感谢各位的阅览!期望共享的内容对我们有协助,更多相关常识,欢迎重视亿速云行业资讯频道!