本文主要介绍rocketmq-spring-boot支持的高级用例,包括发送顺序消息,异步发送,消费过滤以及事务消息发送。该项目git地址:https://github.com/apache/rocketmq-spring
文章主要内容包括以下几个方面:
1 前言
2 API和注解列表
3 消息发送端
4 消息消费端
5 发送事务消息
5.1 定义回查实现类
5.2 RocketMQTemplate发送事务消息
前言
首先在这里向大家报告一个好消息,rocketmq-spring-boot项目经过6个多月的孵化(孵化项目repo: https://github.com/apache/rocketmq-externals),在今年12月初正式毕业。今后的维护和增强将在新的release仓库中进行,具体的地址是:https://github.com/apache/rocketmq-spring
我们把原来单一的project模块按照Spring Boot的规范划分成了四个子模块:
- rocketmq-spring-boot-parent (父pom文件,定义相关的依赖管理和Plugin,供其它几个模块引用)
- rocketmq-spring-boot
(定义auto-configuration实现,具体RocketMQ相关的自动配置和Bean创建代码都集中在这里) - rocketmq-spring-starter
(将rocketmq-spring-boot和其它的依赖打包生成全量的依赖,用户引用它即可完成所有rocketmq-spring的客户端操作) - rocketmq-spring-samples (使用示例,展示如何使用spring-boot方式发送和消费消息)
相对于孵化器版本,本次代码进行了较大的调整。目前已经支持spring-boot 2.0,推荐使用孵化器版本的用户尽快切换到新release的版本。请参考samples来体验spring-boot方式发送和消费消息的编码和使用方式:
https://github.com/apache/rocketmq-spring/tree/master/rocketmq-spring-boot-samples。
下面具体的介绍一下rocketmq-spring-boot 的一些使用细节。
API和注解列表
编写代码时需要按消息发送者(Producer)和消息消费者(Consumer)分别进行代码编写,会使用到如下的API或注解:
注:关于上述API或注解的使用方式,我们提供了如何使用Spring-Boot发送和消费RocketMQ消息的例子,可以直接参考sample的源码
https://github.com/apache/rocketmq-externals/tree/master/samples/rocketmq-spring-boot-starter-sample
下面的文档是对示例的简单说明