当前位置: 首页 > news >正文

若依微服务项目整合rocketMq

原文链接:ttps://mp.weixin.qq.com/s/IYdo_suKvvReqCiEKjCeHw
第一步下载若依项目
第二步安装rocketMq(推荐在linux使用docker部署比较快)
第二步新建一个生产者模块儿,再建一个消费者模块
在这里插入图片描述
在这里插入图片描述

第四步在getway模块中配置接口映射规则
第五步添加依赖(生产者和消费者他们的rocketmq依赖一样)

       <dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId># 选择适宜你的版本就好了我的若依项目版本是3.6.3<version>2.0.2</version></dependency>

第六步添加配置
生产者的

# Tomcat
server:port: 10301# Spring
spring: application:# 应用名称name: mq-producerprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:9849config:# 配置中心地址server-addr: 127.0.0.1:9849# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
rocketmq:name-server: 192.168.94.130:9876producer:# 发送同一类消息的设置为同一个group,保证唯一group: springboot_producer_group# 发送消息超时时间,默认3000sendMessageTimeout: 10000# 发送消息失败重试次数,默认2retryTimesWhenSendFailed: 2# 异步消息重试此处,默认2retryTimesWhenSendAsyncFailed: 2# 消息最大长度,默认1024 * 1024 * 4(默认4M)maxMessageSize: 4096# 压缩消息阈值,默认4k(1024 * 4)compressMessageBodyThreshold: 4096# 是否在内部发送失败时重试另一个broker,默认falseretryNextServer: false
#    stream:
#      bindings:
#        ## 新版本固定格式  函数名-{out/in}-{index}
#        demoChannel-out-0:
#          destination: stream-test-topic
#      rocketmq:
#        binder:
#          name-server: 192.168.94.130:9876

消费者的

# Tomcat
server:port: 10302# Spring
spring: application:# 应用名称name: mq-consumerprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:9849config:# 配置中心地址server-addr: 127.0.0.1:9849# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
rocketmq:consumer:group: springboot_consumer_group# 一次拉取消息最大值,注意是拉取消息的最大值而非消费最大值pull-batch-size: 10name-server: 192.168.94.130:9876

逻辑代码:
生产消息的代码

package com.zhj.mqproducer.controller;import lombok.Setter;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;import org.springframework.messaging.Message;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;@RestController
@RequestMapping("/mqpro")
public class SendMessageController {@Setter(onMethod_ = @Autowired)private RocketMQTemplate rocketmqTemplate;@GetMapping("/test")public  String test() {Message<String> msg = MessageBuilder.withPayload("Hello,RocketMQ").build();rocketmqTemplate.send("eatfan", msg);return "haha";}}

消费消息的代码

package com.zhj.mqconsumer.domain;import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.stereotype.Component;@Component
@RocketMQMessageListener(topic = "eatfan", consumerGroup = "consumer-zhj2")
public class MyConsumer implements RocketMQListener<String> {@Overridepublic void onMessage(String message) {// 处理消息的逻辑System.out.println("Received message: " + message);}
}

在浏览器地址中输入如图信息发送消息
在这里插入图片描述
控制台查看输出
在这里插入图片描述

http://www.lryc.cn/news/254769.html

相关文章:

  • 连接服务器的ssh终端自动断开解放方法
  • Windows+WSL开发环境下微服务注册(Consul)指定IP
  • 通过K8S安装人大金仓数据库
  • 正则表达式(3):入门
  • 《系统架构设计师教程(第2版)》第2章-计算机系统基础知识-01-计算机硬件
  • 用友NC word.docx接口存在任意文件读取漏洞
  • 【离散数学】——期末刷题题库(等价关系与划分)
  • IDEA maven无法下载源代码处理
  • 基于B/S架构的医院一体化电子病历编辑器源码
  • 免费百度SEO优化工具,百度SEO优化排名工具
  • 12.Java程序设计-基于Springboot框架的Android学习生活交流APP设计与实现
  • JVM虚拟机(已整理,已废弃)
  • 强化学习——简单解释
  • IoT DC3 是一个基于 Spring Cloud 全开源物联网平台 linux docker部署傻瓜化步骤
  • SSM项目实战-前端-在Index.vue中展示第一页数据
  • 深入理解mysql的explain命令
  • 相交链表(LeetCode 160)
  • C++多态(详解)
  • 06、基于内容的过滤算法Tensorflow实现
  • html/css中用float实现的盒子案例
  • simulink中 Data store memory、write和read模块及案例介绍
  • java设计模式学习之【装饰器模式】
  • Ubuntu宝塔面板本地部署Emlog个人博客网站并远程访问【内网穿透】
  • 简述IO流的使用以及使用时需要注意的事项
  • 西工大计算机学院计算机系统基础实验一(函数编写11~14)
  • Spring 声明式事务
  • 通达OA inc/package/down.php接口存在未授权访问漏洞
  • 数据库原理: 笛卡儿积
  • docker安装配置prometheus+node_export+grafana
  • 【JavaScript】JS——Map数据类型