SpringBoot配置RocketMQ
时间: 2024-05-03 16:13:01 浏览: 148
为了在SpringBoot项目中使用RocketMQ,我们需要添加相应的依赖和配置。下面是一个简单的配置示例:
1. 添加依赖:
```xml
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>{rocketmq.version}</version>
</dependency>
```
2. 配置属性:
```properties
# name server地址,多个地址用逗号分隔
rocketmq.name-server=127.0.0.1:9876
# 生产者组名
rocketmq.producer.group=producer_group
# 消费者组名
rocketmq.consumer.group=consumer_group
# 配置消费者是否是广播模式,默认为集群模式
rocketmq.consumer.broadcasting=false
# 消费者消息拉取间隔,默认为1秒
rocketmq.consumer.pull-interval=0
# 生产者发送消息超时时间,默认3秒
rocketmq.producer.send-timeout=3000
# 消费者消费消息超时时间,默认15分钟
rocketmq.consumer.consume-timeout=900000
# 消息最大长度,默认4MB
rocketmq.producer.max-message-size=4194304
# 发送消息失败后重试次数,默认为2次
rocketmq.producer.retry-times-when-send-failed=2
# 消费者每次消费消息的最大数量,默认为1条
rocketmq.consumer.consume-message-batch-max-size=1
```
3. 定义生产者和消费者:
```java
@Component
public class MyProducer {
@Autowired
private RocketMQTemplate rocketMQTemplate;
public void send(String topic, String message) {
rocketMQTemplate.convertAndSend(topic, message);
}
}
@Component
public class MyConsumer implements RocketMQListener<String> {
@Override
public void onMessage(String message) {
System.out.printf("Received message: %s\n", message);
}
}
```
在这个示例中,我们定义了一个生产者和一个消费者。生产者使用RocketMQTemplate发送消息,消费者实现了RocketMQListener接口来处理消息。
阅读全文