资源链接
官网:
Kafka的官方下载地址:
Kafka的官方文档地址:
软件安装
这里所安装的Kafka版本为kafka_2.11-2.2.0
。在此,我需要说明的是,由于Kafka本身需要ZooKeeper提供相应的支持,因而在安装Kafka时一定要确保优先安装ZooKeeper。
不过在kafka_2.11-2.2.0
版本的Kafka中,由于有一个内置的ZooKeeper,因而我们就不必再去下载相应的ZooKeeper软件了,直接使用这里现成的即可。
配置环境变量
本来Kafka和ZooKeeper是属于两个软件,可以分别配置环境变量的,但是由于这里采用的是Kafka中含有内置的ZooKeeper,所以我们现在也就省事了,直接配置一个Kafka的环境变量即可(此时它们共用一个环境变量)。
然后在Path中做以下配置:
%KAFKA_HOME%\bin\windows
配置ZooKeeper
ZooKeeper的配置文件所在位置:
安装目录 + config\zookeeper.properties
其默认的端口号如下:
clientPort=2181
其数据存储目录:
dataDir=D:/Dev/Kafka/kafka_2.11-2.2.0/zookeeper
其中dataDir
指的是该软件的数据存储位置,此时根据我们的实际情况自定义相应的存储位置。
配置Kafka
Kafka的配置文件所在位置:
安装目录 + config\server.properties
在这里,我们指定相应的日志文件存储位置:
log.dirs=D:/Dev/Kafka/kafka_2.11-2.2.0/kafka-logs
由于Kafka需要依赖ZooKeeper,而我们的Kafka又内置了ZooKeeper,因而此处的Kafka监听的ZooKeeper端口号直接使用默认的即可,默认的Kafka监听的ZooKeeper端口号为:
zookeeper.connect=localhost:2181
源码
引入Kafka依赖
由于我这里使用了SpringCloud微服务架构,而在该架构中的spring-cloud-dependencies
已经指定了相应的依赖版本号,因而此处我就没必要再次给出了。
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
Java源码
OrderApplication类
import lombok.extern.slf4j<