1. RocketMQ的消费发送分为三种:单向(one way),异步(async),同步(sync)。<br />1):单向:消息生产者(Producer)根据Topic路由信息向Broker调用RocketMQAPI进行发送消息,发送后直接返回,不进行等待消息反馈。缺点:无法确定消息是否发送成功。<br />2):异步:消息生产者(Producer)根据Topic路由信息向Broker调用RocketMQAPI进行发送消息,发送时指定消息反馈回调函数,发送后立即返回,线程不做任何阻塞。缺点:使用回调函数,不利于流程控制。优点:执行效率高,节省时间。<br />3):同步:消息生产者(Producer)根据Topic路由信息向Broker调用RocketMQAPI进行发送消息,发送后同步等待消息反馈,线程阻塞。缺点:线程阻塞影响性能,执行效率低。优点:利于流程控制,不出意外。

RocketMQ消息

RocketMQ消息封装类:org.apache.rocketmq.common.message.Message
扩展属性:
tags:消息tag,用于消息过滤。
keys:消息索引键,用空格隔开,RocketMQ可以根据这些key快速检索消息。
waitStoreMsgOK:消息发送时是否等待消息存储完成后再返回。

  1. public class Message implements Serializable {
  2. private static final long serialVersionUID = 8445773977080406428L;
  3. //Topic主题
  4. private String topic;
  5. //消息标记
  6. private int flag;
  7. //扩展属性
  8. private Map<String, String> properties;
  9. //消息体
  10. private byte[] body;
  11. //事务ID
  12. private String transactionId;
  13. ../部分代码省略