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

相关推荐
superman超哥10 分钟前
仓颉Actor模型的实现机制深度解析
开发语言·后端·python·c#·仓颉
superman超哥11 分钟前
仓颉内存管理深度探索:引用计数的实现原理与实战
c语言·开发语言·c++·python·仓颉
资生算法程序员_畅想家_剑魔14 分钟前
Java常见技术分享-13-多线程安全-锁机制-底层核心实现机制
java·开发语言
萤丰信息17 分钟前
数智重构生态:智慧园区引领城市高质量发展新范式
java·大数据·人工智能·安全·智慧城市
悟空码字23 分钟前
MySQL分库分表,从“一室一厅”到“豪华别墅区”的数据库升级之旅
java·后端·mysql
shix .24 分钟前
spiderdemo 2-混淆
开发语言·python
Lisonseekpan24 分钟前
RBAC 基于角色的访问控制模型详解与实践指南
java·服务器·网络·后端·spring·log4j
lsx20240632 分钟前
Bootstrap 页面标题:设计指南与最佳实践
开发语言
黎雁·泠崖33 分钟前
C 语言结构体全解析:声明 + 内存对齐 + 位段 + 传参优化
c语言·开发语言
奔跑的小十一34 分钟前
ShardingSphere-JDBC 开发手册
java·数据库