【Spring Boot实战与进阶】集成Kafka消息队列

2023-05-16

汇总目录链接:【Spring Boot实战与进阶】学习目录

文章目录

    • 一、简介
    • 二、集成Kafka消息队列
      • 1、引入依赖
      • 2、配置文件
      • 3、测试生产消息
      • 4、测试消费消息

一、简介

   Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。

二、集成Kafka消息队列

1、引入依赖

<dependency>
    <groupId>org.springframework.kafka</groupId>
    <artifactId>spring-kafka</artifactId>
    <version>2.9.0</version>
</dependency>

2、配置文件

spring:
  # Kafka配置
  kafka:
    bootstrap-servers: 192.168.60.123:9092
    consumer:
      # 默认的消费组ID
      group-id: test
      # 是否自动提交offset偏移量,false表示offset由消费者手动维护
      enable-auto-commit: false
      # 每次最大消费消息数量
      max-poll-records: 100
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
    listener:
      # 手动提交方式(record/batch/time/count/manual/manual_immediate)
      ack-mode: manual_immediate

3、测试生产消息

@SpringBootTest
class ScriptApplicationTests {
    @Resource
    private KafkaTemplate kafkaTemplate;

    @Test
    void contextLoads() {
        kafkaTemplate.send("delay-message", "123456");
    }
}

看下Kafka的UI界面(Kafka-map):
在这里插入图片描述

4、测试消费消息

@Slf4j
@Component
public class KafkaConsumer {

    @KafkaListener(id = "test"
            ,topics = "delay-message"
            ,groupId = "test"
            ,concurrency = "1"
            ,autoStartup = "true")
    public void ProductInsertEvent1(ConsumerRecord<String, String> record, Acknowledgment ack) {
        Optional<String> kafkaMessage = Optional.ofNullable(record.value());
        kafkaMessage.ifPresent(msg -> {
            log.info("KafkaConsumer kafka value:{}", msg);
            
			// 手动提交
            ack.acknowledge();
        });
    }

}

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Spring Boot实战与进阶】集成Kafka消息队列 的相关文章

  • iOS代码混淆原理初探

    我们在手游平台SDK的iOS版本中 xff0c 除了AppStore官方支付之外还集成了第三方支付 xff08 微信支付H5和支付宝支付H5版本 xff09 如果用于企业签 xff0c 不需要做处理 xff0c 直接使用即可 但是如果需要上
  • (五)Selenium自动化测试实战—PO模式

    nbsp 上一篇 四 selenium自动化测试之上传本地文件 要开朗的spookypop的博客 CSDN博客 selenium上传本地文件 先看下测试代码运行效果 在做自动化测试时 测试框架设计很重要 测试代码写法也很多种 最简单的莫过于
  • git clone 指定某个分支

    原文 xff1a https blog csdn net qq 28903377 article details 82978583 最近在搭建Gitblit内网仓库时发现一个问题 xff0c git clone 只能clone整个仓库 xf
  • B站Unity官方教程合集(不定期更新)

    Unity官方有好多教程 xff0c 可以帮助我们快速掌握这款引擎的使用 xff0c 但官网上的视频都是油管的 xff0c 故这里为大家整合了一些在B站上的搬运视频 xff0c 很多还是有翻译字幕的 xff0c 比搭梯子方便多了 xff08
  • STM32连接HT1621段码屏驱动

    HT1621 128个位元LCD控制器 xff0c 内部RAM直接对应LCD显示单元 对于HT1621 操作之前应发送标志码 xff0c 表明要求工作在哪种状态 xff0c 标志定义如下 xff1a 操作状态标志码读数据110写数据101读
  • RTK与PPK

    1 通讯方式不同 RTK技术需要无线电台或网络来传输差分数据 PPK技术不需要通信技术的支持 xff0c 并且可以记录静态数据 2 定位方法不同 RTK所使用的实时定位技术使您可以随时在流动站上查看测量点的坐标和精度 xff1b PPK定位
  • iOS真机调试报错(0xE8008016)相关错误

    经常真机运行时候会报错 xff0c 原因之一是之前对项目进行过打包进行如下设置 将Edit Scheme gt Run gt Build Configuration 设置为Release 将其勾选为 Debug状态 xff0c 接下来继续运
  • 支付宝快捷登录相关事宜

    接近年关 xff0c 公司产品提出新需求 xff0c 和支付宝合作 xff0c 需要开发快捷登录 无线账户授权 xff0c 手机端装有支付宝钱包 xff0c 直接唤起支付宝钱包 xff0c 若没有支付宝钱包就直接走HTML5页面操作 xff
  • mac系统Tunnelblick 下载以及安装流程

    公司有些网站有权限设置 xff0c 不同的域账号权限不一样 xff0c 因此需在电脑上安装Tunnelblick xff0c 才能使用 xff0c 接下来给大家介绍一下步骤 xff1a 首先要有安装vpn对应的一系列配置文件 xff1a c
  • IOS App提交到appStore Missing 64-bit support

    Dear developer We have discovered one or more issues with your recent delivery for 34 就医宝 34 Your delivery was successfu
  • MAC 安装cocoapods

    首先是看了文章 xff1a http code4app com article cocoapods install usage http www uml org cn mobiledev 201411072 asp 一 检测以及配置Ruby
  • U8SDK——开发统一的手游防沉迷插件

    关于统一防沉迷插件的配置和使用 xff0c 可以参考我们B站上面录制的视频教程 未满18岁那个视频 xff1a U8SDK官方视频 根据手游防沉迷和实名认证政策的要求 xff0c 手机游戏需要引导玩家进行实名认证 xff1b 同时针对未成年
  • Unable to run app in Simulator(Domain = LaunchServicesErrror, Code = 0)

    NSArray paths 5 61 NSSearchPathForDirectoriesInDomains NSLibraryDirectory NSUserDomainMask YES Users hkqj Library Develo
  • 微信支付登录总结

    做微信支付 xff0c 登录之前需要 提前注册开发者帐号 xff0c 创建移动应用 代码下载路径 xff1a http pan baidu com s 1o7aBxqU xff08 主要是做笔记 xff0c 把微信登录以及微信支付整到一起
  • 微软仿真神器 AirSim + Unreal Engine 4.24 + Ubuntu 18.04 + ROS 编译流程小结

    时间 xff1a 20210107 文章目录 一 参考资料二 系统情况简介三 编译UE引擎流程四 UE引擎测试五 AirSim编译流程六 UE 4 24 43 AirSim 联合测试七 AirSim 的 ROS 功能包测试八 UE 43 R
  • android进阶---【注解(一)之运行时注解】

    android进阶 注解 注解1 什么是注解2 注解的产生3 注解的基础介绍3 1元注解3 2运行时注解与编译时注解区别 4 自定义注解4 1自定义编写规则4 2自定义运行时注解 注解 注解这个概念 xff0c 有些人可能会有些陌生 但是撸
  • 设计容器 实现put get getCount 方法,生产者消费者问题

    设计一个容器 xff0c 支持put get getCount 方法 xff0c 满足两个生产者 二十个消费者阻塞调用 public class ProdConsuCont static ReentrantLock lock 61 new
  • C++程序员必看书单

    转载 xff1a https blog csdn net ljy1988123 article details 7748913 comments C 43 43 xff1a Prata C 43 43 Primer Plus xff1a 基
  • git submodule 升级commit并push

    git submodule 升级commit并push 关于这个问题 xff0c 可以参照以下文章 xff1a https blog csdn net wwj 748 article details 73991862 流程写的很清楚 xff
  • 欧拉角pitch、yaw,roll的理解

    关于旋转永远是做游戏的难点和混乱点 我们知道表示一个旋转有多种方式 xff0c 简单的欧拉角 xff0c 复杂点的四元数 xff0c 再复杂点的矩阵 之前接触unity可以用四元数和欧拉角两种方式表示旋转 xff0c 最近一直研究虚幻引擎

随机推荐

  • Mac执行ruby命令提示 dyld: Library not loaded等类似问题解决方案

    说一下为啥会遇见这么个问题 xff0c 我在给一个xcode项目添加podfile的时候 xff0c 在终端执行了pod init命令 xff0c 随即给了我一个如下图的提示 xff08 报错信息一样的 xff0c 执行pod的命令早就被解
  • 编程题:多线程交替打印ABC

    要求创建3个线程 xff0c 分别打印ABC xff0c 共交替打印10次 span class token keyword public span span class token keyword class span span clas
  • Android App Bundle 自动打包原理

    Google推出Android App Bundle 已经有一段时间了 根据Google的政策说明 xff0c 预计2021年8月之后 xff0c 新发布的应用都必须使用Android App Bundle aab 来上架Google Pl
  • 【玩转Linux】Linux虚拟机设置固定IP

    Linux虚拟机Centos系统的ip总是变化 xff0c 如何固定下来 xff1f 尝试了好多方式 xff0c 终于找到一种最为简单的方法 文章目录 1 查看Centos的IP信息2 修改文件3 刷新网络配置 1 查看Centos的IP信
  • Docker安装MySQL数据库

    文章目录 一 简单方式二 挂载方式1 创建挂载目录2 启动容器 三 修改配置文件1 新建my cnf2 编辑my cnf3 查看是否生效 一 简单方式 span class token function docker span run sp
  • 解决Docker镜像拉取失败问题

    一 问题 Docker拉取mysql镜像 xff0c 发生报错 span class token function docker span pull mysql 8 0 22 报错信息 xff1a Error response from d
  • Docker安装RabbitMQ消息队列

    文章目录 1 启动容器2 连接访问 1 启动容器 span class token function docker span run name rabbitmq span class token punctuation span resta
  • 【玩转Linux】Linux安装宝塔面板

    文章目录 一 简介二 安装1 centos脚本安装2 浏览器访问 三 总结 一 简介 宝塔面板 xff0c 是安全高效的服务器运维面板 xff0c 一个提升运维效率的服务器管理软件 xff0c 支持一键LAMP LNMP 集群 监控 网站
  • 使用JDK的keytool工具生成JKS证书

    使用JDK的keytool工具生成JKS证书 文章目录 1 生成JKS证书2 查看JKS证书详细信息3 导出证书 1 生成JKS证书 keytool genkey alias jwt keyalg RSA keystore jwt jks
  • 【算法】二分查找

    算法 二分查找 题目 xff1a 请实现无重复数字的升序数组的二分查找 难度 xff1a 简单 代码 xff1a 二分查找 xff0c 又叫折半查找 xff0c 要求待查找的序列有序 每次取中间位置的值与待查关键字比较 xff0c 如果中间
  • 【算法】反转链表

    算法 反转链表 题目 xff1a 给定一个单链表的头结点pHead xff0c 长度为n xff0c 反转该链表后 xff0c 返回新链表的表头 难度 xff1a 简单 代码 xff1a span class token keyword c
  • 【算法】合并两个排序的链表

    算法 合并两个排序的链表 题目 xff1a 输入两个递增的链表 xff0c 单个链表的长度为n xff0c 合并这两个链表并使新链表中的节点仍然是递增排序的 难度 xff1a 简单 代码 xff1a span class token key
  • 【算法】判断链表中是否有环

    算法 判断链表中是否有环 题目 xff1a 判断给定的链表中是否有环 如果有环则返回true xff0c 否则返回false 难度 xff1a 简单 代码 xff1a span class token keyword public span
  • 教你快速高效接入SDK——手游聚合SDK的总体思路和架构

    U8SDK技术博客 xff1a http www uustory com xff0c 欢迎来坐坐 百度传课已经停运 xff0c 最新U8SDK视频教程已经转移至B站 xff1a U8SDK最新视频教程 题记 xff1a 很多做游戏开发的人
  • 【算法】删除链表的倒数第N个结点

    算法 删除链表的倒数第N个结点 题目 xff1a 给你一个链表 xff0c 删除链表的倒数第 n 个结点 xff0c 并且返回链表的头结点 难度 xff1a 中等 代码 xff1a span class token keyword publ
  • 阿里云智能编码插件Cosy,提升开发效率杠杠滴!

    文章目录 一 简介二 核心功能1 代码智能补全2 代码示例搜索 三 产品特性1 提升编码效率2 沉浸式开发3 低资源消耗4 隐私保护 四 快速开始1 安装IntelliJ IDEA插件2 测试代码智能补全3 测试代码示例搜索 五 总结 一
  • Alibaba Cloud Toolkit轻量部署插件,一键发布服务器

    文章目录 一 简介二 部署方式1 传统部署方式2 Cloud Toolkit部署方式 四 产品功能五 部署步骤1 安装插件2 添加主机3 Deploy to Host4 控制台5 服务器 六 服务器代码热部署七 Arthas诊断 一 简介
  • 新人一看就懂:Dubbo3 + Nacos的RPC远程调用框架demo

    文章目录 一 前言Feign和Dubbo到底有啥区别 xff0c 为啥大厂都爱用RPC框架 xff1f 二 简介三 dubbo api xff08 对外暴漏的接口 xff09 1 TestService接口 四 dubbo provider
  • Docker安装Kafka消息队列

    文章目录 1 安装zookeeper2 安装kafka3 安装kafka map xff08 可选 xff09 1 安装zookeeper span class token function docker span run span cla
  • 【Spring Boot实战与进阶】集成Kafka消息队列

    汇总目录链接 xff1a Spring Boot实战与进阶 学习目录 文章目录 一 简介二 集成Kafka消息队列1 引入依赖2 配置文件3 测试生产消息4 测试消费消息 一 简介 Kafka是由Apache软件基金会开发的一个开源流处理平