保姆级·在Windows本地配置并运行Kafka

目录

 

一.下载并安装Idea:

进入idea官网:IntelliJ IDEA 下载最新版idea(安装及其他问题请参考其他大佬的文章)

 

二.下载并安装JDK:

1.进入idk官网:JDK 下载最新版jdk

2.将jdk路径配置到windows环境变量下(JAVA_HOME),并将其添加到path中

*配置环境变量具体方法:

1.单击windows键

​编辑

2.搜索“环境变量”

​编辑

3.在下方“系统变量”中点击“新建”

​编辑

4.复制并粘贴文件的具体路径到下方

​编辑

5.然后找到系统环境变虽中的“path”,双击进入

​编辑

6.点击“新建”,添加“%JAVA_HOME%\bin”到其中

7.一直点击“确定”直到退出界面

三.安装并配置ZooKeeper:

1.进入Zookeeper官网:Apache ZooKeeper下载最新稳定版 Zookeeper,下载完后进行解压

​编辑

2.将Zookeeper路径配置到windows环境变量下(ZOOKEEPER_HOME),并将其添加到path中(方法同上)

​编辑

​编辑3.进入Zookeeper目录,在Zookeeper目录下新建名为“dataDir”和“dataLogDir"的文件夹(名称可修改)

​编辑4.进入Zookeeper目录下的conf目录,重命名“zoo_sample.cfg"文件为“zoo.cfg",然后打开该文件

5.修改其中的 dataDir路径和dataLogDir路径为刚才新建的dataDir和dataLogDir文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出

​编辑

四.安装并配置Kafka:

1.进入Kafka官网:Apache Kafka下载最新版Kafka

​编辑

2.将Kafka路径配置到windows环境变量下(KAFKA_HOME),并将其添加到path中(方法同上)

​编辑

​编辑4.进入Kafka目录,在Kafka目录下新建名为“data”的文件夹(名称可修改)

​编辑5.进入Kafka目录下的config目录,进入server.properties文件

​编辑

6.修改其中的log.dirs目录为刚才新建的data文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出

​编辑

五.启动ZooKeeper和Kafka:

1.启动ZooKeeper

(1)进入ZooKeeper目录下的bin目录,单击上方路径栏,输入“cmd”进入命令行

(2)命令行中输入“zkServer”启动Zookeeper

​编辑

(3)出现类似下图则为启动成功

​编辑

2.启动Kafka

(1)进入Kafka目录下,单击上方路径栏,输入“cmd”进入命令行

​编辑

(2)命令行中输入“bin\windows\kafka-server-start.bat config\server.properties"启动Kafka

(3)出现类似下图则为启动成功(如果运行不成功,可能是server.properties文件中有错误)

六.在Idea中配置消费者和生产者:

1.进入Idea,新建项目

​编辑

2.选择Spring,选择Maven,点击下一步

​编辑

4.选择Web选项中的Spring Web,点击创建

​编辑5.新建完成项目后,左侧找到“pom.xml”,添加依赖到dependency下(如果报红可以重启几次Idea)

​编辑6.左侧找到“src”,一直展开到“org.example”包下(名称可能不一样)

​编辑

7.右键选择新建,然后选择Java类

​编辑

8.分别新建名称为ConsumerSample和ProducerSample的Java类

​编辑

9.然后在其中输入以下代码

(1)ConsumerSample:

​编辑

(2)ProducerSample:

先运行Consumer代码,再运行Producer代码。然后返回Consumer,出现以下结果则为成功


 

一.下载并安装Idea:

进入idea官网:IntelliJ IDEA 下载最新版idea(安装及其他问题请参考其他大佬的文章)

 

二.下载并安装JDK:

1.进入idk官网:JDK 下载最新版jdk

2.将jdk路径配置到windows环境变量下(JAVA_HOME),并将其添加到path中

 

*配置环境变量具体方法:

1.单击windows键

2.搜索“环境变量”

3.在下方“系统变量”中点击“新建”

4.复制并粘贴文件的具体路径到下方

5.然后找到系统环境变虽中的“path”,双击进入

6.点击“新建”,添加“%JAVA_HOME%\bin”到其中

7.一直点击“确定”直到退出界面

 

三.安装并配置ZooKeeper:

1.进入ZooKeeper官网:Apache ZooKeeper下载最新稳定版 ZooKeeper,下载完后进行解压


2.将ZooKeeper路径配置到windows环境变量下(ZOOKEEPER_HOME),并将其添加到path中(方法同上)


3.进入ZooKeeper目录,在ZooKeeper目录下新建名为“dataDir”和“dataLogDir"的文件夹(名称可修改)


4.进入ZooKeeper目录下的conf目录,重命名“zoo_sample.cfg"文件为“zoo.cfg",然后打开该文件

5.修改其中的 dataDir路径和dataLogDir路径为刚才新建的dataDir和dataLogDir文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出

 

四.安装并配置Kafka:

1.进入Kafka官网:Apache Kafka下载最新版Kafka

2.将Kafka路径配置到windows环境变量下(KAFKA_HOME),并将其添加到path中(方法同上)


4.进入Kafka目录,在Kafka目录下新建名为“data”的文件夹(名称可修改)


5.进入Kafka目录下的config目录,进入server.properties文件

6.修改其中的log.dirs目录为刚才新建的data文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出

 

五.启动ZooKeeper和Kafka:

1.启动ZooKeeper

(1)进入ZooKeeper目录下的bin目录,单击上方路径栏,输入“cmd”进入命令行

(2)命令行中输入“zkServer”启动ZooKeeper

(3)出现类似下图则为启动成功

2.启动Kafka

(1)进入Kafka目录下,单击上方路径栏,输入“cmd”进入命令行

(2)命令行中输入“bin\windows\kafka-server-start.bat config\server.properties"启动Kafka

(3)出现类似下图则为启动成功(如果运行不成功,可能是server.properties文件中有错误)

 

六.在Idea中配置消费者和生产者:

1.进入Idea,新建项目

2.选择Spring,选择Maven,点击下一步

4.选择Web选项中的Spring Web,点击创建


5.新建完成项目后,左侧找到“pom.xml”,添加依赖到dependency下(如果报红可以重启几次Idea)

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
</dependency>


6.左侧找到“src”,一直展开到“org.example”包下(名称可能不一样)

7.右键选择新建,然后选择Java类

8.分别新建名称为ConsumerSample和ProducerSample的Java类

9.然后在其中输入以下代码

(1)ConsumerSample:

import org.apache.kafka.clients.consumer.Consumer;
import org.apache.kafka.clients.consumer.ConsumerRecord;
import org.apache.kafka.clients.consumer.ConsumerRecords;
import org.apache.kafka.clients.consumer.KafkaConsumer;

import java.util.Arrays;
import java.util.Properties;

public class ConsumerSample {
    public static void main(String[] args) {
        String topic = "test-topic";

        Properties props = new Properties();
        props.put("bootstrap.servers", "localhost:9092");
        props.put("group.id", "testGroup1");
        props.put("enable.auto.commit","true");
        props.put("auto.commit.interval.ms","1000");
        props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
        props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
        Consumer<String, String> consumer = new KafkaConsumer(props);
        consumer.subscribe(Arrays.asList(topic));
        while (true) {
            ConsumerRecords<String, String> records = consumer.poll(100);
            for (ConsumerRecord<String, String> record : records)
                System.out.printf("partition = %d, offset = %d, key = %s, value = %s%n", record.partition(), record.offset(), record.key(), record.value());
        }
    }
}

(2)ProducerSample:

import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.Producer;
import org.apache.kafka.clients.producer.ProducerRecord;

import java.util.HashMap;
import java.util.Map;

public class ProducerSample {
    public static void main(String[] args) {
        Map<String, Object> props = new HashMap<String,Object>();
        props.put("bootstrap.servers", "localhost:9092");
        props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        props.put("key.deserializer","org.apache.kafka.common.serialization.StringDeserializer");
        props.put("value.deserializer","org.apache.kafka.common.serialization.StringDeserializer");
        props.put("zk.connect", "127.0.0.1:2181");

        String topic = "test-topic";
        Producer<String, String> producer = new KafkaProducer<String, String>(props);
        producer.send(new ProducerRecord<String, String>(topic, "key01", "这是我的第1条测试消息"));
        producer.send(new ProducerRecord<String, String>(topic, "key02", "这是我的第2条测试消息"));
        producer.send(new ProducerRecord<String, String>(topic, "key03", "这是我的第3条测试消息"));

        producer.close();
    }
}

先运行Consumer代码,再运行Producer代码。然后返回Consumer,出现以下结果则为成功

 

 

这是本人第一次分享经验,有不足的地方欢迎各位大佬指出!感谢!!

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值