一、搭环境
阿里rocketmq不用搭建, https://help.aliyun.com/document_detail/34411.html?spm=a2c4g.11186623.6.546.1787650eShM7ho
开源rocketmq(window+rocketmq) https://www.cnblogs.com/amuge/articles/10275292.html
二、发送消息类型:
三、名词解释 https://help.aliyun.com/document_detail/29533.html?spm=a2c4g.11186623.6.542.1cfa77d7wLCfvb
消息相关名词:
Topic:消息主题 , 一级消息类型
Tag:消息标签,二级消息类型,用来进一步区分某个Topic下的消息分类
Message:消息体
MessageID:消息的全局唯一标识;
Producer:消息生产者(消息发布者)
Producer实例:Producer 的一个对象实例,不同的 Producer 实例可以运行在不同进程内或者不同机器上。Producer 实例线程安全,可在同一进程内多线程之间共享。
consumer:消息消费者(消息订阅者),负责接收消费消息
Consumer 的一个对象实例,不同的 Consumer 实例可以运行在不同进程内或者不同机器上。一个 Consumer 实例内配置线程池消费消息。
Group 一类 Producer 或 Consumer,这类 Producer 或 Consumer 通常生产或消费同一类消息,且消息发布或订阅的逻辑一致。
Group ID Group 的标识。
消费相关名词:
集群消费 一个 Group ID 所标识的所有 Consumer 平均分摊消费消息。例如某个 Topic 有 9 条消息,一个 Group ID 有 3 个 Consumer 实例,那么在集群消费模式下每个实例平均分摊,只消费其中的 3 条消息
广播消费 一个 Group ID 所标识的所有 Consumer 都会各自消费某条消息一次。例如某个 Topic 有 9 条消息,一个 Group ID 有 3 个 Consumer 实例,那么在广播消费模式下每个实例都会各自消费 9 条消息。
消息类型名词:
定时消息 Producer 将消息发送到消息队列 RocketMQ 服务端,但并不期望这条消息立马投递,而是推迟到在当前时间点之后的某一个时间投递到 Consumer 进行消费,该消息即定时消息。
延时消息 Producer 将消息发送到消息队列 RocketMQ 服务端,但并不期望这条消息立马投递,而是延迟一定时间后才投递到 Consumer 进行消费,该消息即延时消息。
事务消息 消息队列 RocketMQ 提供类似 X/Open XA 的分布事务功能,通过消息队列 RocketMQ 的事务消息能达到分布式事务的最终一致。
顺序消息 消息队列 RocketMQ 提供的一种按照顺序进行发布和消费的消息类型, 分为全局顺序消息和分区顺序消息。
全局顺序消息 对于指定的一个 Topic,所有消息按照严格的先入先出(FIFO)的顺序进行发布和消费。
分区顺序消息 对于指定的一个 Topic,所有消息根据 sharding key 进行区块分区。同一个分区内的消息按照严格的 FIFO 顺序进行发布和消费。Sharding key 是顺序消息中用来区分不同分区的关键字段,和普通消息的 key 是完全不同的概念。
四、apache rocketmq名词解释
Producer Group(生产组):相同角色组成的组
Name Server:为producer和consumer提供路由(用户broker发现)
Broker:提供轻量级的topic和queue机制处理消息存储,同时支持推push和拉pull模式和主从结构的容错机制
五、发送消息
http://rocketmq.apache.org/docs/simple-example/
http://rocketmq.apache.org/docs/order-example/
http://rocketmq.apache.org/docs/schedule-example/
http://rocketmq.apache.org/docs/transaction-example/