← 返回首页
RocketMQ简介
发表时间:2023-08-14 15:45:10
RocketMQ简介

RocketMQ是由阿里捐赠给Apache的一款低延迟、高并发、高可用、高可靠的分布式消息中间件。经历了淘宝双十一的洗礼。RocketMQ既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积、高吞吐、可靠重试等特性。

1.什么是消息队列

消息队列(Message Queue),从广义上讲是一种消息队列服务中间件,提供一套完整的信息生产、传递、消费的软件系统,如图所示:

一句话总结:消息中间件不生产消息,只是消息的搬运工。

2.消息中间件的应用场景

3.RocketMQ各部分角色介绍

  1. NameServer:NameServer是整个RocketMQ的“大脑”,它是RocketMQ的服务注册中心,所以RocketMQ需要先启动NameServer再启动Rocket中的Broker。
  2. Broker在启动时向所有NameServer注册(主要是服务器地址等),生产者在发送消息之前先从NameServer获取Broker服务器地址列表(消费者一样),然后根据负载均衡算法从列表中选择一台服务器进行消息发送。
  3. 主机(Broker):RocketMQ的核心,用于暂存和传输消息。
  4. 生产者(Producer):也称为消息发布者,负责生产并发送消息至RocketMQ。
  5. 消费者(Consumer):也称为消息订阅者,负责从RocketMQ接收并消费消息。
  6. 消息(Message):生产或消费的数据,对于RocketMQ来说,消息就是字节数组。

4.常见消息队列对比