为了账号安全,请及时绑定邮箱和手机立即绑定

SpringBoot整合kafka,并在Windows下安装运行kafka

SpringBoot整合kafka

项目工程结构:

图片描述

pom.xml配置:

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

		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
			<version>2.8.5</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.9.0</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
			<version>2.9.0</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>5.0.7.RELEASE</version>
		</dependency>

application.properties文件:

#============== kafka ===================
kafka.consumer.zookeeper.connect=127.0.0.1:2181
kafka.consumer.servers=127.0.0.1:9092
kafka.consumer.enable.auto.commit=true
kafka.consumer.session.timeout=6000
kafka.consumer.auto.commit.interval=100
kafka.consumer.auto.offset.reset=latest
kafka.consumer.topic=kafka-lhf
kafka.consumer.group.id=lhf
kafka.consumer.concurrency=10

kafka.producer.servers=127.0.0.1:9092
kafka.producer.retries=0
kafka.producer.batch.size=4096
kafka.producer.linger=1
kafka.producer.buffer.memory=40960

kafka.topic.default=lhf-kafka

代码说明:

图片描述
ErrorCode.java ——错误代码
MessageEntity.java——消息实体类
Response.java ——响应实体类
KafkaConsumerConfig.java——kafka消费者配置
KafkaProducerConfig.java——kafka生产者配置
SimpleConsumer.java——消息消费者
ProducerCallback.java——消息生产者发送消息的接口
SimpleProducer.java——消息生产者
ProduceController.java——控制层
KafkaDemoApplication.java——项目启动入口类

在windows下安装运行kafka

安装ZooKeeper

1、 下载安装包
http://zookeeper.apache.org/releases.html#download
图片描述
图片描述
2、 解压并进入ZooKeeper目录,寡人的目录:
D:\softPackage\zookeeper\zookeeper-3.4.13\conf
3、 将“zoo_sample.cfg”重命名为“zoo.cfg”
4、 打开“zoo.cfg”找到并编辑:
dataDir=D:\softPackage\zookeeper\zookeeper-3.4.13\tmp
5、 添加系统变量:ZOOKEEPER_HOME=D:\softPackage\zookeeper\zookeeper-3.4.13
6、 编辑path系统变量,添加路径:%ZOOKEEPER_HOME%\bin
7、 在zoo.cfg文件中修改默认的Zookeeper端口(默认端口2181)
8、 打开新的cmd,输入“zkServer“,运行Zookeeper
9、 命令行提示如下:说明本地Zookeeper启动成功
图片描述

安装Kafka

1、 下载安装包
http://kafka.apache.org/downloads
注意要下载二进制版本
图片描述
2、 解压并进入Kafka目录,寡人的目录:D:\softPackage\kafka\kafka_2.12-2.0.1
3、 进入config目录找到文件server.properties并打开
4、 找到并编辑log.dirs=D:\softPackage\kafka\kafka_2.12-2.0.1\kafka-logs
5、 找到并编辑zookeeper.connect=localhost:2181
6、 Kafka会按照默认,在9092端口上运行,并连接zookeeper的默认端口:2181
7、 进入Kafka安装目录D:\softPackage\kafka\kafka_2.12-2.0.1,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入如下命令,启动kafka服务
.\bin\windows\kafka-server-start.bat .\config\server.properties
图片描述
注意:不要关了这个窗口,启用Kafka前请确保ZooKeeper实例已经准备好并开始运行

使用kafka

1、 创建主题,进入Kafka安装目录D:\softPackage\kafka\kafka_2.12-2.0.1,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic lhf-kafka
图片描述
注意:不要关了这个窗口
查看主题输入:
.\bin\windows\kafka-topics.bat --list --zookeeper localhost:2181
图片描述

2、 创建生产者,进入Kafka安装目录D:\softPackage\kafka\kafka_2.12-2.0.1,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic lhf-kafka
图片描述
注意:不要关了这个窗口

3、 创建消费者,进入Kafka安装目录D:\softPackage\kafka\kafka_2.12-2.0.1,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic lhf-kafka --from-beginning
图片描述
图片描述

测试

启动项目,使用postman工具进行测试,测试结果如下:
图片描述
图片描述

以上内容就是关于SpringBoot整合kafka的小实例,以及在windows环境下安装运行kafka操作,关于更多kafka的应用,请自行学习。
感谢诸君的支持!

点击查看更多内容
5人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
1.5万
获赞与收藏
8507

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消