目录
1.条件条件
2.下载
3.安装
4.环境变量设置
5.验证
1.条件条件
1.先安装zookeeper:
【Zookeeper】Windows下安装Zookeeper(全面)-CSDN博客https://blog.csdn.net/weixin_57259781/article/details/141679454
2.还必要安装scala:
【Scala】Windows下安装Scala(全面)-CSDN博客https://blog.csdn.net/weixin_57259781/article/details/141673648
2.下载
下载链接:
Index of /kafka (apache.org)https://downloads.apache.org/kafka/选择符合的版本下载.tgz文件:
3.安装
下载的压缩包解压两次得到文件夹:该文件夹的路径也就是kafka的安装路径
在目录下添加一个新的空的文件夹,名字为logs
修改config目录下的设置文件server.properties
修改 log.dirs 参数值,修改成上一步新建的logs文件夹。注意文件夹路径中是双左斜杠
继续在改设置文件中修改listeners 参数的值为:
- listeners=PLAINTEXT://localhost:9092
复制代码
4.启动
由于Kafka依赖于Zookeeper,所以要先启动Zookeeper,再启动Kafka。
4.1启动Zookeeper服务
到zookeeper安装路径下bin目录下双击zkServer.cmd文件:
表现如下信息,则表示Zookeeper服务正常运行:
4.2启动kafka服务
到kafka的安装目录下进入cmd窗口:
输入下令启动kafka:
- .\bin\windows\kafka-server-start.bat .\config\server.properties
复制代码 我的输入下令后报错如下:
报错原因:由于目录层级太深或者是目录名字太长导致的。我们必要把文件夹移动到一个层级浅一点的位置:
我从位置:D:\Users\125715\tools\kafka\kafka\kafka_2.12-3.5.1移动到:D:\Users\125715\tools\kafka\3.5.1,并且修改config目录下的设置文件server.properties中的 log.dirs 参数值
继续重新启动kafka:在下令行输入下令上述下令,出现如下则表示乐成:
5.验证
总体思绪:创建主题topics,生产者向topics中推送消息,消费者从topics中读取消息。
起首进入本身的kafka安装路径的bin目录下的window目录下,我的安装目录为: D:\Users\125715\tools\kafka\3.5.1\bin\windows
然后我们来了解一下必要用到的几个脚本实行文件:
5.1创建检察topics
下令如下:
- #创建topics,--topic后为topic名称,--replication-factor为副本数量,partitions 为分区数量
- kafka-topics.bat --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic kafkatest
- #查看所有的topics
- kafka-topics.bat --bootstrap-server localhost:9092 --list
复制代码 创建主题:在bin目录的windows目录下添加CMD窗口,并输入上述创建topics的下令,如下创建主题kafkatest乐成:
检察主题kafkatest:
5.2producer(生产者)发送消息
向刚刚创建的主题kafkatest里面发送消息的下令:
- kafka-console-producer.bat --broker-list localhost:9092 --topic kafkatest
复制代码 向topics为kafkatest中发送消息:
5.3consumer(消费者)消费消息
重新在同一个目录下打开一个新的cmd窗口,并实行如下下令:
- kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic kafkatest --from-beginning
复制代码 输入下令后可以检察到接收到消息了,但是是乱码,如果收不到消息,可以仔细检察生产者和消费者对应的topics是否为同一个。如果继续在生产者窗口输入消息,然后回车:
再检察消费者窗口,发现消息很快被消费者消费了:
6.乱码办理永久
打开config目录下的设置文件:
在文件中查找producer.encoding属性,若能找到就设置值为:UTF-8,我的找不到就添加设置:
如下:
保存文件然后重启kafka:
重启后可检察刚刚创建的topic还存在:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |