时间:2021-05-20
这里使用 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 */@Datapublic 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 */@RestControllerpublic 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 整合消息队列的资料请关注其它相关文章!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前期工作1.导入mybatis整合依赖org.mybatis.spring.bootmybatis-spring-boot-starter2.1.42.连接数据
sprig-boot是一个微服务架构,加快了spring工程快速开发,以及简便了配置。接下来开始spring-boot与mybatis的整合。1、创建一个mav
消息队列现今的应用场景越来越大,常用的有RabbmitMQ和KafKa。我们用BlockingCollection来实现简单的消息队列。BlockingColl
在一次项目中,因甲方需要使用kafka消息队列推送数据,所以需要接入kafka,并且kafka的版本是2.11。但是我们项目使用的是Springboot1.5.
1.什么是spring-boot-devtoolsspring-boot-devtools是spring-boot项目开发时的一个热部署工具,安装了spring