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 选举,负载均衡等功能

相关推荐
接着奏乐接着舞38 分钟前
大模型开发 agent 知识库
java
xuhaoyu_cpp_java1 小时前
SpringBoot学习(四)
java·经验分享·spring boot·笔记·学习
2601_960906721 小时前
中国智能投影市场(不含激光电视)全渠道销量同比暴跌21.4%
kafka·etcd·consul·storm
plainGeekDev1 小时前
kapt 替换为 KSP
android·java·kotlin
蜡台1 小时前
通过Gradle脚本声明更改Java变量
android·java·开发语言·python·kotlin·gradle·groovy
小喻同学i2 小时前
std::thread函数参数传递
开发语言·c++
程序员天天困2 小时前
后端视角看 EventBus:发布订阅总线的原理、场景与用法
java·后端
要开心吖ZSH2 小时前
AI医疗分诊与健康咨询助手agent开发——(4-2)从零到一:我给AI医疗分诊助手加了个“知识库大脑“,终于搞懂了RAG是什么
java·docker·agent·医疗·rag
AI人工智能+电脑小能手3 小时前
【大白话说Java面试题 第179题】【07_Redis篇】第15题:什么是 Redlock 算法?
java·redis·分布式锁·高可用·redlock
Ulyanov3 小时前
Python实现6-DOF刚体仿真器(下)——环境扰动与控制闭环
开发语言·python·算法·系统仿真·雷达电子对抗·导引头