Java开发从入门到精通(一):Kafka基础知识

目录:

Kafka 概念

kafka 可以脱离 zookeeper 单独使用吗?为什么?

kafka 有两种数据保留的策略

kafka 同时设置了 7 天和 10G 清除数据,到第五天的时候消息达到了 10G,这个时候 kafka 将如何处理?

什么情况会导致 kafka 运行变慢?

使用 kafka 集群需要注意什么?

Kafka 数据存储设计

生产者设计

消费者设计

Consumer Group

1、Kafka 概念

Kafka 是一种高吞吐量、分布式、基于发布/订阅的消息系统,最初由 LinkedIn 公司开发,使用Scala 语言编写,目前是 Apache 的开源项目。

broker:Kafka 服务器,负责消息存储和转发

topic:消息类别,Kafka 按照 topic 来分类消息

partition:topic 的分区,一个 topic 可以包含多个 partition,topic 消息保存在各个partition 上

offset:消息在日志中的位置,可以理解是消息在 partition 上的偏移量,也是代表该消息的唯一序号

Producer:消息生产者

Consumer:消息消费者

Consumer Group:消费者分组,每个 Consumer 必须属于一个 group

Zookeeper:保存着集群 broker、topic、partition 等 meta 数据;另外,还负责 broker 故障发现,partition leader 选举,负载均衡等功能

相关推荐
haluhalu.1 分钟前
深入理解Linux线程机制:线程概念,内存管理
java·linux·运维
jiaguangqingpanda3 分钟前
Day22-20260118
java·开发语言
雪碧聊技术4 分钟前
1、LangChain4j 名字的寓意
java·大模型·langchain4j
Ulyanov19 分钟前
战场地形生成与多源数据集成
开发语言·python·算法·tkinter·pyside·pyvista·gui开发
风生u21 分钟前
bpmn 的理解和元素
java·开发语言·工作流·bpmn
C+-C资深大佬1 小时前
C++数据类型
开发语言·c++·算法
ID_180079054731 小时前
日本乐天商品详情API接口的请求构造与参数说明
开发语言·python·pandas
派大鑫wink1 小时前
【Day34】Servlet 进阶:会话管理(Cookie vs Session)
java·开发语言·学习方法
多米Domi0111 小时前
0x3f 第35天 电脑硬盘坏了 +二叉树直径,将有序数组转换为二叉搜索树
java·数据结构·python·算法·leetcode·链表
猫天意1 小时前
【深度学习小课堂】| torch | 升维打击还是原位拼接?深度解码 PyTorch 中 stack 与 cat 的几何奥义
开发语言·人工智能·pytorch·深度学习·神经网络·yolo·机器学习