Kafka从入门到上天系列第三篇:基础架构推演+基础组件图形推演

一:基础架构图形推演

1:单体架构

单节点kafka broker,面临很多生产者和访问者的时候,大量的请求和访问大概率会因为吞吐量过大。产生io热点问题,结果就是:这个单一节点成为整个分布式系统的性能瓶颈和节点隐患。进而降低分布式系统的可用性和稳定性。

如果数据还没有写入到磁盘文件,而导致数据丢失。当前有两种方式,一种是横向拓展、纵向拓展。

横向拓展:单点改为集群。多个节点共同承载。降低单点故障带来的故障

纵向拓展:增加单节点服务器配置。比如:使用io效率更好的固态硬盘、切换千兆网卡、切换更优秀的Cpu、增大节点内存等等。这个性价比不高,横向才是王道。

2:集群broker

分布式系统的数据所有原理都是这样:数据分片+数据备份

kafka没有备份的概念,为了数据可靠性,我们可以将数据文件进行备份。kafka体系中称之为副本,多个副本中只能一个进行读写他就是leader。其他副本只是一个备份。

具有读写能力的副本叫做leader副本,作为备份的副本被称为follower副本。

下面图中:箭头出去的地方是leader副本,箭头所致的地方是follower副本。

Broker:服务节点(集群)

Topic:逻辑上进行Record分割的概念。

Partition:分区,本质上是逻辑上概念,有编号的概念,从0开始。有自己对应的物理目录和文件,并可以按照Broker进行备份。

replica:副本分为Leader和Follower概念。Leader可以进行读写,Follower只是备份。当Leader挂掉之后(网络故障、资源耗尽、交换机过热等)

相关推荐
2603_9547083111 小时前
全维度容错设计,打造微电网安全运行屏障
服务器·网络·数据库·人工智能·分布式·安全
国服第二切图仔12 小时前
HarmonyOS APP《画伴梦工厂》开发第60篇-分布式软总线2.0——多设备协同新范式
分布式·wpf·harmonyos
9523613 小时前
RabbitMQ-基础操作
java·spring boot·分布式·后端·spring·rabbitmq
worilb16 小时前
Spring Cloud 学习与实践(13):使用 Seata 解决分布式事务问题
分布式·学习·spring cloud
Devin~Y17 小时前
电商场景下的Java面试实战:从Spring Boot微服务到Kafka、Redis与AI RAG
java·spring boot·redis·elasticsearch·spring cloud·微服务·kafka
风若飞18 小时前
Tomcat 9.0.118 分布式 Redis Session 配置指南
redis·分布式·tomcat
六bring个六18 小时前
文件互传在传输层的操作分析
分布式·p2p·c/c++·open harmony
豆瓣鸡19 小时前
Leaf 分布式 ID 生成实战——美团 Leaf 从原理到落地
java·spring boot·分布式
AllData公司负责人19 小时前
数据同步平台|AIIData数据中台实现MySQL、Hive、Kafka 一键接入Doris
大数据·数据库·hive·mysql·kafka·实时同步