springboot rocketmq配置生产者和消息者

发布于:2025-03-01 ⋅ 阅读:(110) ⋅ 点赞:(0)

在Spring Boot中集成RocketMQ,你需要进行以下步骤来配置生产者和消费者。下面是一个简化的流程:

1. 添加依赖

首先,在你的pom.xml文件中添加RocketMQ的依赖项。确保你使用的是与Spring Boot兼容的版本。

<dependencies>
    <!-- 其他依赖 -->

    <!-- RocketMQ Spring Boot Starter -->
    <dependency>
        <groupId>org.apache.rocketmq</groupId>
        <artifactId>rocketmq-spring-boot-starter</artifactId>
        <version>2.2.3</version> <!-- 确认这是最新或适合你的版本 -->
    </dependency>

    <!-- 其他依赖 -->
</dependencies>

2. 配置application.yml

src/main/resources/application.yml中添加RocketMQ的相关配置。

rocketmq:
  name-server: 127.0.0.1:9876 # RocketMQ NameServer 地址
  producer:
    group: your-producer-group # 生产者的组名
    send-message-timeout: 3000 # 发送消息超时时间,默认3秒
  consumer:
    group: your-consumer-group # 消费者的组名

3. 创建生产者

你可以创建一个服务类来发送消息。

import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class RocketMQProducer {

    @Autowired
    private RocketMQTemplate rocketMQTemplate;

    public void sendMessage(String topic, String message) {
        rocketMQTemplate.convertAndSend(topic, message);
    }
}

4. 创建消费者

接下来,创建一个监听器来消费消息。

import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.stereotype.Service;

@Service
@RocketMQMessageListener(topic = "your-topic", consumerGroup = "your-consumer-group")
public class RocketMQConsumer implements RocketMQListener<String> {

    @Override
    public void onMessage(String message) {
        System.out.printf("Receive message: %s %n", message);
        // 处理接收到的消息
    }
}

5. 使用

  • 在需要发送消息的地方注入RocketMQProducer并调用其sendMessage方法。
  • 当有消息发布到指定的topic时,RocketMQConsumer将自动接收并处理这些消息。

网站公告

今日签到

点亮在社区的每一天
去签到