@RestControllerpublicclassNormalProduceController{@Setter(onMethod_ = @Autowired)privateRocketMQTemplate rocketmqTemplate;@GetMapping("/test")publicSendResulttest(){// 用 setHeader 设置tag 标签 可能不会生效// 用 topic:tag 方式可以Message<String> msg = MessageBuilder.withPayload("Hello,RocketMQ")//.s...
rocketMQTemplate.syncSend(topic, MessageBuilder.withPayload(msgBody).build(), messageTimeOut, delayLevel); } /** * 发送单向消息(只负责发送消息,不等待应答,不关心发送结果,如日志) */ public void sendOneWayMsg(String msgBody) { rocketMQTemplate.sendOneWay(topic, MessageBuilder.withPayload(msgBody)...
1.4创建日志文件夹 mkdir /usr/local/rocketmq/logs 1.5修改启动文件,设置参数 修改runserver.sh vim /usr/local/rocketmq/bin/runserver.sh JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m" 修改runbroker.sh vim /usr/local/rocketmq/bi...
以上4步即可实现SpringBoot与RocketMQ的整合,这部分属于基础知识,不做过多说明。 2 使用RocketMQ会遇到的问题 以下是一些在SpringBoot中使用RocketMQ时常遇到的问题,现在为您逐一解决。 2.1 WARN No appenders could be found for logger 启动项目时会在日志中看到如下告警 RocketMQLog:WARN No appenders could be ...
三、SpringBoot整合RocketMQ 3.1 添加rocketmq-spring-boot-starter等相关依赖 <dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId><version>2.2.2</version></dependency> 3.2 添加配置 rocketmq:name-server:127.0.0.1:9876producer:#必须指定groupgroup:test...
RocketMQ配置: spring:application:name:springboot3-rocketmqrocketmq:consumer:#group: springboot3_consumer_group# 一次拉取消息最大值,注意是拉取消息的最大值而非消费最大值pull-batch-size:10name-server:127.0.0.1:9876producer:# 发送同一类消息的设置为同一个group,保证唯一group:springboot3_producer_grou...
事务消息:RocketMQ提供了类似X/Open XA的分布式事务功能,通过事务消息能达到分布式事务的最终一致。XA是一种分布式事务解决方案,一种分布式事务处理模式半事务消息:暂不能投递的消息,发送方已经成功地将消息发送到了Broker,但是Broker未收到最终确认指令,此时该消息被标记成“暂不能投递”状态,即不能被消费者看到。
使用rocketmq-4.6.0.zip: 启动名称服务 mqnamesrv.cmd 启动数据中心 mqbroker.cmd -n localhost:9876 当前环境版本为: SpringBoot 2.0.6.RELEASE SpringCloud Finchley.RELEASE SpringCldod Alibaba 0.2.1.RELEASE RocketMQ 4.3.0 在项目工程中导入:
使用Spring Boot项目后,我们还是先准备一个消息的实体类TranMessage,代码如下: packagecom.huc.rocketmq.transaction.spring;/** * 事务消息实体 */publicclassTranMessage{publicstaticfinalString TOPIC ="Tran";/** * 编号 */privateInteger id;publicTranMessage setId(Integer id) {this.id = id;returnthis;...
一.新建spring boot项目 废话不多说。。。 二.配置application.properties 1. spring.application.name=rocketmq2. server.port=80883. ###producer4. #该应用是否启用生产者5. rocketmq.producer.isOnOff=on6. #发送同一类消息的设置为同一个group,保证唯一,默认不需要设置,rocketmq会使用ip@pid(pid代表jvm名...