RocketMQ消息的发送与类别

RocketMQ消息的发送与类别

本文主要内容为:

消息的发送:

  1. 一对一
  2. 一对多
  3. 多对多

消息的类别:

  1. 同步消息
  2. 异步消息
  3. 单向消息
  4. 延时消息
  5. 批量消息
    后面还会讲到消息的过滤

消息的发送

消息的简单一对一的发生在上一篇的测试中就有写到,这里不再写。

一对多发送

一对多发送是一个生产者多个消费者的情况,而且每个消费者都需要得到生产者发送的消息。
这时有两种方案解决这个问题:

  1. 分组
    在创建消费者的时候我们设置了分组、设置了监听的topic。
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("group1");
consumer.subscribe("topic1","*");

消息队列会把消息发给每个监听了topic的分组中,如果分组有多个成员,则这些成员去分这些消息。
所有如果想要每个消费者都收到这个消息,可以选择让它们各自占一个不同的分组。

  1. 广播
    如果我不想要那么多分组,我就要一个分组中所有消费者都拥有所有的消息呢?
    消费者分组中默认的消息分配方式为集群模式,也就是所有的成员按照负载均衡算法获取数据,进行处理,这些消费者构成一个集群。
    我们可以将这种分配方式改为广播模式:
consumer.setMessageModel(MessageModel.BROADCASTING);

这样的话组内的每个消费者都会得到所有传给组的消息。

多对多发送

多对多就是多个服务器给多个客户端发送消息。具体还是分配到每一个的topic上来存取。

消息的类别

同步消息

即时性较强,重要的消息,且必须有回执的消息,例如短信,通知(转账成功)
直接发送的就是同步消息

SendResult result = producer.send(msg
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值