kafka学习记录

文章目录

尚硅谷Kafka教程,2024新版kafka视频,零基础入门到实战

【尚硅谷】Kafka3.x教程(从入门到调优,深入全面)

Kafka 3.0 基础知识 + 原理 (了解一篇就够)

windows单机版kafka

搭建步骤

将文件夹名改为local

在local文件夹下创建data目录,然后修改local下的config目录下的zookeeper.properties文件

启动zookeeper

修改config目录中的server.properties文件

启动kafka

编写zk.cmd和kafka.cmd,然后就可以双击启动zookeeper和kafka了

主题的增删改查操作

主题的增删改查操作(注意:删除主题会由于windows权限问题而导致kafka进程关闭。遇到问题,把data目录下的所有文件夹删掉就行了,然后重新启动zk和kafka,反正就是个本地环境而已)

消息的生产与消费

kafkatool小工具

Windows集群版kafka

搭建步骤

将kafka_2.12-3.6.1.tgz解压到D:\kafka\kafka-cluster目录下,并拷贝3份,一共4份,分别命名为kafka-zk、kafka-1、kafka-2、kafka-3。

在kafka-zk目录下创建data目录,并修改config/zookeeper.properties文件

在kafka-1中创建data目录,并修改config/server.properties文件。因为zk默认就是连本机的zk服务器,并且端口是2181所以就不用修改了。然后kafka-2、kafka-3作同样修改,注意端口、目录、broker.id分别配置即可

依次启动zk、kafka-1、kafka-2、kafka-3

为了方便启动,在kafka-zk下创建zk.cmd启动脚本,在kafka-{n}下创建kafka.cmd(其它2个与这个完全一样),然后在kafka-clsuter下创建cluster.cmd和cluster-clear.cmd



双击cluster.cmd即可启动kafka集群

打开kafkatool软件(连接的时候,填zookeeper的ip和端口即可),即可连接成功

关闭kafka命令窗口后,双击cluster.cmd即可清理各个文件夹中的data目录(当遇到错误时,可执行此操作)

prettyZoo

zookeeper的作用

  1. 在ZooKeeper软件中创建节点Node,创建一个Node时,我们会设定这个节点是持久化创建,还是临时创建。所谓的持久化创建,就是Node一旦创建后会一直存在,而临时创建,是根据当前的客户端连接创建的临时节点Node,一旦客户端连接断开,那么这个临时节点Node也会被自动删除,所以这样的节点称之为临时节点。

  2. ZooKeeper节点是不允许有重复的,所以多个客户端创建同一个节点,只能有一个创建成功。

  3. 另外一个是客户端可以在ZooKeeper的节点上增加监听器,用于监听节点的状态变化,一旦监听的节点状态发生变化,那么监听器就会触发响应,实现特定监听功能。

可以使用prettyZoo这个可视化软件查看zookeeper服务的节点,先启动kafka的zk服务,然后用prettyZoo连上去。然后再启动kafka单机版本的那个,再看prettyZoo的变化。

启动单机版的kafka,观察PrettyZoo


启动kafka服务后,发现节点变多了

启动集群版的kafka,观察PrettyZoo

相关推荐
roman_日积跬步-终至千里1 小时前
【分布式理论13】分布式存储:数据存储难题与解决之道
分布式
(; ̄ェ ̄)。2 小时前
在Nodejs中使用kafka(三)offset偏移量控制策略,数据保存策略
分布式·后端·kafka·node.js
binbinxyz3 小时前
【Kafka系列】Kafka 消息传递保障机制
分布式·kafka
苏生Susheng5 小时前
【SpringBoot整合系列】Kafka的各种模式及Spring Boot整合的使用基础案例
java·spring boot·后端·spring·kafka·消息队列·并发
T.O.P115 小时前
分布式ID介绍&实现方案总结
分布式
Golinie6 小时前
【Go | 从0实现简单分布式缓存】-1:LRU缓存淘汰策略与单机并发缓存
分布式·缓存·golang
漫步者TZ8 小时前
【kafka系列】Kafka事务的实现原理
数据库·分布式·kafka
IT闫10 小时前
【Dubbo+Zookeeper】——SpringBoot+Dubbo+Zookeeper知识整合
分布式·zookeeper·云原生·dubbo
2501_9032386511 小时前
Kafka中commitAsync的使用与实例解析
分布式·kafka·个人开发·linq
何似在人间57513 小时前
RabbitMQ 消息队列的工作模式
分布式·rabbitmq