kafka在生产消息发送到broker之前要经过
序列化的过程,消费者在消费消息前,消息会经过
反序列化。
序列化和
反序列化的配置在application.yml可以通过下面方式配置。
spring:
kafka:
producer:
#生产者key的
序列化器
key-
serializer: org.apache.
kafka.common.se
rialization.Integer
Serializer
#生产者value的
序列化器
带Kafka的样本Spring Boot
公开了一个使用json消息并发布到kafka主题中的api
要通过泊坞窗启动zookeeper和kafka,请执行以下操作:
docker-compose up
生成应用程序映像
docker build --no-cache -t sample_kafka:0.0.1 . -f docker\Dockerfile
创建主题:
bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic test
要开始制作,请执行以下操作:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
要启动消费者:
将 zoo_sample.cfg 重命名为 zoo.cfg
编辑 zoo.cfg, 指定 dataDir
运行 cmd, 进入 bin`目录,输入`zkServer.cmd,启动 zookeeper.
kafka 安装
运行 cmd, 输入 输入bin\windows\kafka-server-start.bat config\server.properties,启动 kafka
运行以下命令
kafka-topics.bat --create --zookeeper localhost:2181 --replica
带有Kafka Consumer实例的Spring Boot
本项目介绍如何将Spring Boot与Spring Kafka结合使用以使用Kafka主题中的JSON / String消息
启动Zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties
启动Kafka服务器
bin/kafka-server-start.sh config/server.properties
创建Kafka主题
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic Kafka_Example
bin/kafka-topics.sh --create --zookeeper loc
import org.apache.
kafka.clients.producer.*;
import org.apache.
kafka.common.
KafkaException;
import org.apache.
kafka.common.errors.Ret
riableException;
import org.slf4j.Logger;
import
今天在启动1. 概述
Kafka传输自定义的DTO对象时,不能像平时一样使用StringSerializer和StringDeserializer。这种情况需要自己实现对应DTO的序列化器和反序列化器。
假设现在有个 KafkaMsgDto 类,代码如下:
@Data
public class KafkaMsgDto {
private String id;
private ActionEnum action;
public KafkaMsgDto(){
public