033. RocketMQ 入门

1. 简介


1. RocketMQ 是什么?
  • RocketMQ 是由阿里捐赠给 Apache 的一款分布式、队列模型的开源消息中间件,经历了淘宝双十一的洗礼。
2. RocketMQ 的特性
  • 原生分布式
  • 两种消息拉取
  • 严格消息顺序
  • 特有的分布式协调器
  • 亿级消息堆积
  • 组(Group)

2. RocketMQ 基本概念


概念描述
Producer消息生产者,负责生产消息,一般由业务系统负责产生消息。
Consumer消息消费者,负责消费消息,一般是后台系统负责异步消费。
Push Consumer封装消息拉取,消费进程和内部。
Pull Consumer主动拉取消息,应用的消费进程进行初始化。
Producer Group一类 Producer 的集合名称,这类 Producer 通常发送一类消息,且发送逻辑一致。
Consumer Group一类 Consumer 的集合名称,这类 Consumer 通常消费一类消息,且消费逻辑一致。
Broker消息中转角色,负责存储消息,转发消息,这里就是 RocketMQ Server。
Topic消息的主题,用于定义并在服务端配置,消费者可以按照主题进行订阅,也就是消息分类,通常一个系统一个 Topic。
Message在生产者、消费者、服务器之间传递的消息,一个 message 必须属于一个 Topic
Namesrv一个无状态的名称服务,可以集群部署,每一个 broker 启动的时候都会向名称服务器注册,主要是接收 broker 的注册,接收客户端的路由请求并返回路由信息。
Offset偏移量,消费者拉取消息时需要知道上一次消费到了什么位置,这一次从哪里开始。
Partition分区,Topic 物理上的分组,一个 Topic 可以分为多个分区,每个分区是一个有序的队列。分区中的每条消息都会分配给一个有序的 ID,也就是偏移量。
Tag用于对消息进行过滤,理解为 message 的标记,同一业务不同目的的 message 可以用相同的 topic ,但是可以用不同的 tag 来区分。
key消息的 KEY 字段是为了唯一表示消息的,方便查问题,不是说必须设置,只是说设置为了方便开发和运维定位问题。比如:这个 KEY 可以是订单 ID 等。

3. RocketMQ 安装运行


下载 RocketMQ
wget http://mirror.bit.edu.cn/apache/rocketmq/4.6.0/rocketmq-all-4.6.0-bin-release.zip
解压
unzip -d /usr rocketmq-all-4.6.0-bin-release.zip
mv /usr/rocketmq-all-4.6.0-bin-release /usr/rocketmq
启动 NameServer
nohup sh bin/mqnamesrv > ~/logs/rocketmqlogs/namesrc.log 2>&1 &
  • NameServer 默认 4G,假如启动报错,记得修改该配置。
启动 Broker
nohup sh bin/mqbroker -n localhost:9876 > ~/logs/rocketmqlogs/broker.log 2>&1 &
查看 Broker 列表
bin/mqadmin clusterList -n localhost:9876
  • Broker 默认 8G,假如启动报错,记得修改该配置。
停止 Broker
bin/mqshutdown broker
停止 NameServer
bin/mqshutdown namesrv
发送消息
export NAMESRV_ADDR=localhost:9876
bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
接收消息
bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

4. RocketMQ Java 使用


<dependency>
    <groupId>org.apache.rocketmq</groupId>
    <artifactId>rocketmq-client</artifactId>
    <version>4.6.0</version>
</dependency>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值