The Spring for Apache RocketMQ (spring-rocket) project applies core Spring concepts to the development of rocketMQ-based messaging solutions. It provides a "template" as a high-level abstraction for sending messages. It also provides support for Message-driven POJOs with @RocketListener annotations and a "listener container".
It is functionally similar to the following projects:
- Spring for Apache Kafka
- Spring for Apache Pulsar
- Spring AMQP
- synchronous sending
- asynchronous sending
- sequential sending
- batch sending
- delay sending
- send in one-way mode
- send in transaction
- send and receive (request-reply)
- concurrent consuming
- sequential consuming
- batch consuming
- consuming with push mode
- consuming with pull mode
- message filtering
- message tracing
- authentication and authorization support
- Maven 3.0 and above
- Rocket Client 4.9 and above
- JDK 17 and above
- Spring 6.0 and above
There are several modules in Spring for Apache RocketMQ. Here is a quick overview:
Aims to integrate Apache RocketMQ with Spring Boot.
The main library that provides the API to access Apache RocketMQ.
Provides utilities to help with testing Spring for Apache RocketMQ applications.
Build spring-rocket
first, then build spring-boot-autoconfigure-rocket
, and then you can run spring-rocket-test
Add a dependency using maven:
- Spring:
<!--add dependency in pom.xml-->
<dependency>
<groupId>org.springframework.rocket</groupId>
<artifactId>spring-rocket</artifactId>
<version>${RELEASE.VERSION}</version>
</dependency>
- Spring Boot:
<!--add dependency in pom.xml-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure-rocket</artifactId>
<version>${RELEASE.VERSION}</version>
</dependency>
Spring for Apache RocketMQ is Open Source software released under the Apache 2.0 license.