mq订阅不同服务器上的消息,(一)RocketMQ订阅与发布

RocketMQ的组成

Producer:生产消息(生产者)

Broker:存储消息(服务器)

Consumer:消费消息(消费者)

RocketMQ的消息的订阅与发布

订阅与发布时指某个生产者向某个Topic发送消息,消息的订阅是指某个消费者关注了某个topic中带有某些tag的消息,进而从该topic消费数据。

实现的前提:

消息的集合Topic

Topic是订阅主题,RocketMQ中有多个Topic,但每一条消息只能属于一个Topic,所以Topic是消息订阅的基本单位,topic中每一条消息的id都是唯一的。

标签(tag)

为消息设置的标志,用于同一topoc下区分不同类型的消息。来自同一业务单元的消息,可以根据不同业务目的在同一主题下设置不同标签,也可以根据不同的tag,编写不同的业务逻辑。

Broker Server

负责接收生产者消息并对其进行存储以及将消息下发至订阅Topic对应的消费者。

订阅与发布流程

6325ff2c31c24f17bea9cfa7ca9bae72.jpg

消息顺序

一类消息在消费时需要保持生产的顺序才有意义(订单创建、订单支付、订单完成),同时订单时可以保持并行消费,RocketMQ可以保持严格的消息有序。

全局顺序:对于指定的一个 Topic,所有消息按照严格的先入先出(FIFO)的顺序进行发布和消费。 适用场景:性能要求不高,所有的消息严格按照 FIFO 原则进行消息发布和消费的场景

对于指定的一个 Topic,所有消息根据 sharding key 进行区块分区。 同一个分区内的消息按照严格的 FIFO 顺序进行发布和消费。 Sharding key 是顺序消息中用来区分不同分区的关键字段,和普通消息的 Key 是完全不同的概念。 适用场景:性能要求高,以 sharding key 作为分区字段,在同一个区块中严格的按照 FIFO 原则进行消息发布和消费的场景。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值