Spring boot 整合KAFKA消息队列的示例

 更新时间:2020年10月16日 11:33:50   作者:拾阶求上  
这篇文章主要介绍了Spring boot 整合 KAFKA 消息队列的示例,帮助大家更好的理解和使用spring boot框架,感兴趣的朋友可以了解下

这里使用 spring-kafka 依赖和 KafkaTemplate 对象来操作 Kafka 服务。

一、添加依赖和添加配置项

1.1、在 Pom 文件中添加依赖

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

1.2、添加配置项

spring:
 kafka:
 bootstrap-servers: 12.168.3.62:9092 # 指定kafka 代理地址,可以多个
 producer:
  retries: 2 # 写入失败时,重试次数。当retris为0时,produce不会重复。
  batch-size: 1000 #每次批量发送消息的数量,produce积累到一定数据,一次发送
  buffer-memory: 33554432 # produce积累数据一次发送,缓存大小达到buffer.memory就发送数据
  acks: 0 #procedure要求leader在考虑完成请求之前收到的确认数,用于控制发送记录在服务端的持久化,如果设置为零,则生产者将不会等待来自服务器的任何确认。
  key-serializer: org.apache.kafka.common.serialization.StringSerializer #指定消息key和消息体的编解码方式
  value-serializer: org.apache.kafka.common.serialization.StringSerializer

二、代码编写

2.1、添加一个消息类

package com.jsh.mgt.kafkaTemplate.kafka;

import java.util.Date;
import lombok.Data;

/**
 * @since 2020/5/21 14:13
 */
@Data
public class Message {
 private Long id; //id

 private String msg; //消息

 private Date sendTime; //时间戳
}

2.2、设置消息生产者

package com.jsh.mgt.kafkaTemplate.Controllers;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.jsh.mgt.kafkaTemplate.kafka.Message;
import java.util.Date;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;

/**
 * @since 2020/5/21 11:19
 */
@RestController
public class KafkaController {
 @Autowired
 private KafkaTemplate<String,Object> kafkaTemplate;

 private Gson gson = new GsonBuilder().create();

 @GetMapping("/kafka/{msg}")
 public Object test(@PathVariable("msg") String msg) {
 Message message = new Message();
 message.setId(System.currentTimeMillis());
 message.setMsg(UUID.randomUUID().toString()+ "-"+msg);
 message.setSendTime(new Date());
 kafkaTemplate.send("topic-create",gson.toJson(message));
 return "ok";
 }
}

以上就是Spring boot 整合 KAFKA 消息队列的示例的详细内容,更多关于Spring boot 整合消息队列的资料请关注脚本之家其它相关文章!

相关文章

  • java中 利用正则表达式提取( )内内容

    java中 利用正则表达式提取( )内内容

    本篇文章,小编为大家介绍关于java中 利用正则表达式提取( )内内容,有需要的朋友可以参考一下
    2013-04-04
  • mybatis中数据加密与解密的实现

    mybatis中数据加密与解密的实现

    数据加解密的实现方式多种多样,在mybatis环境中数据加解密变得非常简单易用,本文主要介绍了mybatis中数据加密与解密的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • SpringBoot 监听Redis键过期事件(过期监听)

    SpringBoot 监听Redis键过期事件(过期监听)

    Redis键过期事件是SpringBoot中常用的缓存失效通知方式,通过配置可以监听特定键的过期事件,具有一定的参考价值,感兴趣的可以了解一下
    2024-12-12
  • java实现多文件上传至本地服务器功能

    java实现多文件上传至本地服务器功能

    这篇文章主要为大家详细介绍了java实现多文件上传至本地服务器功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • Java IO篇之Reactor 网络模型的概念

    Java IO篇之Reactor 网络模型的概念

    Reactor 模式也叫做反应器设计模式,是一种为处理服务请求并发提交到一个或者多个服务处理器的事件设计模式,Reactor 模式主要由 Reactor 和处理器 Handler 这两个核心部分组成,本文给大家介绍Java IO篇之Reactor 网络模型的概念,感兴趣的朋友一起看看吧
    2022-01-01
  • 详解Gradle安装并配置到IDEA的方法

    详解Gradle安装并配置到IDEA的方法

    这篇文章主要介绍了Gradle安装并配置到IDEA的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Spring实战之依赖关系注入之后的行为示例

    Spring实战之依赖关系注入之后的行为示例

    这篇文章主要介绍了Spring实战之依赖关系注入之后的行为,结合实例形式分析了Spring依赖关系注入之后的行为实现与使用相关操作技巧,需要的朋友可以参考下
    2019-11-11
  • springSecurity之如何添加自定义过滤器

    springSecurity之如何添加自定义过滤器

    这篇文章主要介绍了springSecurity之如何添加自定义过滤器的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Mybatis中一对多(collection)和一对一(association)的组合查询使用

    Mybatis中一对多(collection)和一对一(association)的组合查询使用

    这篇文章主要介绍了Mybatis中一对多(collection)和一对一(association)的组合查询使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • 详谈java集合框架

    详谈java集合框架

    这篇文章主要介绍了详谈java集合框架 ,需要的朋友可以参考下
    2015-05-05

最新评论