rocketmq是一款阿里开源的中间件工具,前面提供一篇rocketmq的安装教程,这里用springboot和rocketmq试着整合一下。如果想要下载安装rocketmq,可以参考
https://blog.csdn.net/fajing_feiyue/article/details/103639428
1、增加rocketmq的maven文件,producer和consuermer是同样maven,这里贴出其中的一个的maven依赖。
<dependency>
<groupId>com.alibaba.rocketmq</groupId>
<artifactId>rocketmq-client</artifactId>
<version>3.2.6</version>
</dependency>
2、增加producer和consumer的application.properties的配置文件。
producer的application.properties
#该应用是否启用生产者
rocketmq.producer.isOnOff=on
#发送同一类消息的设置为同一个group,保证唯一,默认不需要设置,
# rocketmq会使用ip@pid(pid代表jvm名字)作为唯一标示
rocketmq.producer.groupName=rocketProducerGroup
#mq的nameserver地址
rocketmq.producer.addr=192.168.25.128:9876
#消息最大长度 默认1024*4(4M)
rocketmq.producer.maxMessage=4096
#发送消息超时时间,默认3000
rocketmq.send.outTime=3000
#发送消息失败重试次数,默认2
rocketmq.producer.retryNum=2
rocketmq.producer.topic=orderTopi
rocketmq.producer.tag=demoTag
consumer的application.properties的配置文件
##该应用是否启用消费者
rocketmq.consumer.isOnOff=on
rocketmq.consumer.groupName=rocketCustomerGroup
#mq的nameserver地址
rocketmq.consumer.namesrvAddr=192.168.25.128:9876
#该消费者订阅的主题和tags("*"号表示订阅该主题下所有的tags),格式:topic~tag1||tag2||tag3;topic2~*;
rocketmq.consumer.topics=orderTopi~*;;
rocketmq.consumer.consumeThreadMin=20
rocketmq.consumer.consumeThreadMax=64
#设置一次消费消息的条数,默认为1条
rocketmq.consumer.consumeMessageBatchMaxSize=1
3、这种rocketmq生产者的配置配置
@Configuration
@Component
public class RocketProduceConfig {
private static final Logger LOGGER = LoggerFactory.getLogger(RocketProduceConfig.class);
/**
* 发送同一类消息的设置为同一个group,
* 保证唯一,默认不需要设置,rocketmq会使用ip@pid(pid代表jvm名字)作为唯一标示
*/
@Value("${rocketmq.producer.groupName}")
private String groupName;
@Value("${rocketmq.producer.addr}")
private String producerAddr;
/**
* 消息最大大小,默认4M
*/
@Value("${rocketmq.producer.maxMessage}")
private Inte