Kafka是什么?Rocket MQ在Spring Boot中怎么整合使用/Kafka在SpringBoot中简单配置使用

news2025/1/17 3:51:33

写在前面
继续记录自己的SpringBoot学习之旅,这次是SpringBoot应用相关知识学习记录。若看不懂则建议先看前几篇博客,详细代码可在我的Gitee仓库SpringBoot克隆下载学习使用!

3.5.4.5 SpringBoot整合RocketMQ
3.5.4.5.1 RocketMQ安装
  • 点击RockedMQ网站下载解压,这里选择4.9.2 Binary版本
  • 配置环境变量,默认端口号是9876,如图
    ![[Pasted image 20221117144535.png]]
    ![[Pasted image 20221117144433.png]]![[Pasted image 20221117144345.png]]
    在这里插入图片描述
  • 启动namespaceServer服务,点击bin里中的mqnamesrv,如图
    ![[Pasted image 20221117144937.png]]
    ![[Pasted image 20221117144951.png]]
  • 启动mqbroker服务,同上,点击mqbroker.cmd,如图![[Pasted image 20221117154514.png]]
    **注:**若报错则是jdk目录安装在C盘里的Program Files中,解决办法是打开打开runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号,如图![[Pasted image 20221117154616.png]]
  • 消息生产消费测试
    • 生产者测试,cmd命令输入tools tools org.apache.rockedmq.example.quickstart.Producer,如图即可![[Pasted image 20221117155437.png]]
    • 消费者测试,cmd命令输入tools org.apache.rocketmq.example.quickstart.Consumer,如图![[Pasted image 20221117155522.png]]
3.5.4.5.2 整合
  • SpringBoot添加坐标,在maven仓库搜索RocketMQ找到有Starter的,复制粘贴,如图![[Pasted image 20221117155924.png]]
  • 配置yml,如图
  • ![[Pasted image 20221117161540.png]]
  • 编辑实现类发送同步消息,并将之前实现类@Service注释掉,如下:
@Service  
public class MessageServiceRocketmqImpl implements MessageService {  
    @Autowired  
    private RocketMQTemplate rocketMQTemplate;  
    @Override  
    public void sendMessage(String id) {  
        System.out.println("待发送短信的订单已纳入处理队列(rocketmq),id: " + id);  
        rocketMQTemplate.convertAndSend("order_id",id);  
    }  
    @Override  
    public String doMessage() {  
        return null;  
    }  
}

,运行后如图
在这里插入图片描述

  • 编写监听器,如下:
@Component  
@RocketMQMessageListener(topic = "order_id",consumerGroup = "group_rocketmq_01")  
public class MessageListener implements RocketMQListener<String> {  
    @Override  
    public void onMessage(String id) {  
        System.out.println("已完成短信发送业务(rocketmq),id=" + id);  
    }  
}

,运行后如图![[Pasted image 20221117163447.png]]

  • 编辑实现类发送异步消息,同上,更改如图![[Pasted image 20221117164111.png]]
    ,运行如图![[Pasted image 20221117164133.png]]
3.5.4.6 SpringBoot整合kafka
3.5.4.6.1 Kafka安装
  • 点击Kafka网站下载版本,选择2.8.2版本
  • 下载后解压缩即可
  • 启动zookeeper服务,默认端口2181,CMD命令如下zookeeper-server-start.bat ../../config/zookeeper.properties,若报错命令行太长,使用短的文件名
  • 启动kafka服务,默认端口9092,命令kafka-server-start.bat ../../config/server.properties即可
3.5.4.6.2 kafka测试
  • 创建topic,cmd命令kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic demo,如图![[Pasted image 20221118190835.png]]
  • 查看topic,cmd命令kafka-topics.bat --zookeeper 127.0.0.1:2181 --list,如图![[Pasted image 20221118191050.png]]
  • 启动生产者,cmd命令kafka-console-producer.bat --broker-list localhost:9092 --topic demo
  • 启动消费者,cmd命令kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic demo --from-beginning
  • 生产者与消费者交互,生产者操作如图![[Pasted image 20221118193944.png]]
    ,消费者如图
    ![[Pasted image 20221118193959.png]]
3.5.4.6.3 整合
  • 添加坐标,如下:
<!--       kafka-->  
      <dependency>  
         <groupId>org.springframework.kafka</groupId>  
         <artifactId>spring-kafka</artifactId>  
      </dependency>
  • 配置yml,如图![[Pasted image 20221118200846.png]]
  • 添加实现类与监听器,如图![[Pasted image 20221118200900.png]]
    添加监听器如图![[Pasted image 20221118200919.png]]
    ,结果如图![[Pasted image 20221118201041.png]]
    ![[Pasted image 20221118201058.png]]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/23902.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

怎么设计个性时尚的班服?一起来看看莱佛士学生的设计

校园时期&#xff0c;每个学生其实都拥有一次做“设计师”的经历&#xff0c;那就是为自己的班集体设计班服&#xff01; 莱佛士设计学院就曾与新加坡国立大学Yong Loo Lin 医学院合作&#xff0c;进行过一场别开生面的校园文创设计大赛&#xff0c;其中不仅有班服设计&#x…

【iOS开发】-UIPickerView

写在开头 昨天学习了iOS一个简单的控件。 UIPickerView; UIPickerView组件类似HTML都Select组件效果&#xff0c;提供数据供用户选择。可以通过plist文件提供数据。UIPickerView是一个选择器控件&#xff0c;可以生成单列的选择器&#xff0c;也可以生成多列的选择器&#xff…

【待解决】Not a Prefab scene

开发平台&#xff1a;Unity 2018.4.10f1 编程平台&#xff1a;Visual Studio   问题描述 注意&#xff1a;这是一个 意义不明 的报错内容。   问题发生环境&#xff08;可能不唯一&#xff09; 在 Unity 2018版本中&#xff0c;编辑场景内已有预制体的游戏对象时发生的问题…

stm32cubemx hal学习记录:FreeRTOS消息队列

一、基本介绍 1、消息队列就是一个像容器一样的东西&#xff0c;我们所有的任务都可以往内部写&#xff0c;然后队列会将我们的消息按顺序存下来&#xff0c;所有的任务也可以按顺序将其读出来。 2、队列需要明确数据的大小以及队列的长度&#xff0c;写队列和读队列都是采用…

16.面试重点CookieSession

一、文件上传&#xff08;使用频率高&#xff0c;但不是很重要&#xff09; 1.通过form表单 前端&#xff1a; form表单&#xff0c;method必须是POST, enctype属性是multipart/form-data, type是file 引起HTTP请求体的格式以multipart的形式传输 后端&#xff1a; 正常…

UnRaid虚拟机安装Uos家庭版并由Windows远程桌面访问的成功流程

文章目录0、前言1、UnRaid虚拟机安装Uos家庭版1.1、下载Uos系统镜像1.1.1、在https://home.uniontech.com/官网下载镜像安装包&#xff08;如下图&#xff1a;&#xff09;1.1.2、上传至Unraid1.1.3、添加虚拟机1.1.4、激活Uos家庭版2、开启Uos的远程桌面2.1、为Uos安装xrdp服务…

【制作数字人】零门槛通过三维重建技术生成个人三维模型

依托各项技术的发展&#xff0c;数字人技术开始拔地而起。我们发现&#xff0c;各大一线互联网企业、三大运营商&#xff0c;还有不少创业型公司都纷纷入局数字人。 难道元宇宙的入门票是数字人&#xff1f;等不及了&#xff0c;马上接触下这门技术。经简单了解&#xff0c;现…

前端学习路线(三)

往期回顾↓↓↓ 前端学习路线&#xff08;一&#xff09; 前端学习路线&#xff08;二&#xff09; 在前两章中&#xff0c;我们讲了如何去学习前端三剑客、js高级和bootstrap的重点&#xff0c;得到了很多前端初学者的好评&#xff0c;收藏量也是每天都在增加&#xff0c;所以…

【身份证识别】基于matlab GUI BP神经网络身份证识别【含Matlab源码 2239期】

⛄一、身份证号码识别简介 1 引言 当今是一个信息高度发达的时代&#xff0c;对于每个公民而言身份证那一连串的数字体现了个人信息的唯一性&#xff0c;出于保障公民合法权益和社会治安的考虑&#xff0c;越来越多的行业都开始建立自己的安全保障体系&#xff0c;其中最为关键…

STA:虚拟时钟(virtual clock)与I/O延时约束

1.什么是虚拟时钟&#xff1f; 虚拟时钟&#xff08;virtual clock&#xff09;是存在但没有clock source(pin/port)定义的时钟&#xff0c;仅作为输入输出端口延时约束的参考时钟。定义方式如下例: create_clock -name virtual_clock -period 10 -waveform {0 5} &#xff1…

第四章:Spring七大核心模块Bean、Core、Context

Spring框架七大模块 容器模块&#xff08;spring core&#xff09;、应用上下文模块&#xff08;spring context&#xff09;、AOP模块&#xff08;spring aop&#xff09;、JDBC抽象和DAO模块&#xff08;spring dao&#xff09;、对象/关系映射集成模块&#xff08;spring o…

R3LIVE代码详解(三)

0. 简介 在上一章中&#xff0c;我们过完了主函数以及LIO的操作&#xff0c;由于这部分代码在FAST-LIO2中已经充分详细的介绍过了&#xff0c;所以说这里在R3LIVE中就不过多介绍了&#xff0c;下面我们来看一下本系列的重点&#xff0c;即VIO部分。 1. 主函数 我们在之前分析…

美国访问学者申请|J1签证官方指定材料大全

美国访问学者申请需要哪些材料&#xff1f;下面就随知识人网老师一起来看一看J1签证官方指定材料大全。 一、 有效护照&#xff1a;如果您的护照将在距您预计抵美日期的六个月内过期、或已损坏、或护照上已无空白的签证签发页, 请在前来面谈之前先申请一本新护照。 二、DS-160…

leetcode:1957. 删除字符使字符串变好

难度&#xff1a;简单 一个字符串如果没有 三个连续 相同字符&#xff0c;那么它就是一个 好字符串 。 给你一个字符串 s &#xff0c;请你从 s 删除 最少 的字符&#xff0c;使它变成一个 好字符串 。 请你返回删除后的字符串。题目数据保证答案总是 唯一的 。 示例 1&#xf…

Podman 部署私有镜像仓库

Podman 部署私有镜像仓库 文章目录Podman 部署私有镜像仓库1. 安装 Podman 和 httpd-tools2. 配置仓库存储位置3. 生成访问仓库的凭据3.1 htpasswd 用户名和密码3.2 TLS 密钥对4. 启动容器5. 测试5.1 登陆5.2 API访问5.3 镜像入库5.4 查询镜像信息Podman是一个无守护进程的开源…

JavaScript基础(14)_in、hasOwnProperty、instanceof的用法、垃圾回收

in 用法&#xff1a;检查对象和原型对象是否含有该属性。 语法&#xff1a;"属性名" in 对象名 hasOwnProperty 用法&#xff1a;检查对象自身是否含有该属性。 语法&#xff1a;对象名.hasOwnProperty("属性名") instanceof 用法&#xff1a;检查一个对…

在裸机上输出Hello,world! [rCore-lab1]

引言 非常简单的“Hello, world”应用程序,实际上有着多层硬件和软件工具和支撑环境隐藏在它背后&#xff0c;才让我们不必付出那么多努力就能够创造出功能强大的应用程序。生成应用程序二进制执行代码所依赖的是以 编译器 为主的开发环境&#xff1b;运行应用程序执行码所依赖…

寻找更好的分类模型loss

寻找更好的loss1.CE loss并不完美2.可能更好的loss函数2.1 CC-LOSS2.2 Center-LOSS参考文献1.CE loss并不完美 最常用于深度学习分类模型的损失函数可以说就是CE(交叉熵) loss了。正如CC-LOSS paper中所述&#xff0c;该loss更关注各类是否separated&#xff0c;而非不同类之间…

Zookeeper:实现“通知协调”的 Demo

应用配置集中到节点上&#xff0c;应用启动时主动获取&#xff0c;并在节点上注册一个 watcher&#xff0c;每次配置更新都会通知到应用。数据发布/订阅&#xff08;Publish/Subscribe&#xff09;系统&#xff0c;即所谓的配置中心&#xff0c;顾名思义就是发布者将数据发布到…

[机器翻译]——pivot-based zero-shot translation based on fairseq

文章目录前言翻译到en生成"伪"的、到英语的数据文件把每一个zs语言对翻译到en从fairseq-generate生成的文件中&#xff0c;抽取纯en文件把en数据和所有zs语言对的tgt数据形成平行语料&#xff0c;然后做预处理形成en到tgt的平行语料预处理在en到tgt语言的"伪&qu…