一、源码拉取
https://github.com/apache/kafka
切换至3.3版本
二、准备
安装Gradle、高版本JDK、Scala插件
VM配置:
-Dkafka.logs.dir=/Users/developer/Documents/personal/kafka/logs
-XX:+UseG1GC
-XX:MaxGCPauseMillis=20
-XX:InitiatingHeapOccupancyPercent=35
-XX:+ExplicitGCInvokesConcurrent
-XX:MaxInlineLevel=15
-Djava.awt.headless=true
参数配置:
/Users/developer/Documents/personal/kafka/config/server.properties
调整config/zookeeper.properties和server.properties log路径 默认/tmp下
可以在项目中新增文件夹tmp,指定它方便看日志
将config/log4j.properties文件copy到core模块的resources目录下
在build.gradle文件中, dependencies {}内添加
implementation 'log4j:log4j:1.2.17'
implementation 'org.slf4j:slf4j-api:2.0.3'
implementation 'org.slf4j:slf4j-log4j12:2.0.3'
三、编译测试
进入kafka项目bin目录,启动zk
./zookeeper-server-start.sh -daemon /Users/developer/Documents/personal/kafka/config/zookeeper.properties
运行core模块 scala目录下kafa.Kafka main方法
直接运行examples模块下KafkaConsumerProducerDemo,测试生产消费者是否正常