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挂掉之后(网络故障、资源耗尽、交换机过热等)

相关推荐
凌乱的豆包14 小时前
Spring Cloud Alibaba Nacos 服务注册发现和分布式配置中心
分布式
独隅16 小时前
PyTorch 分布式训练完整指南:策略、实现与模型选型
人工智能·pytorch·分布式
架构师老Y16 小时前
011、消息队列应用:RabbitMQ、Kafka与Celery
python·架构·kafka·rabbitmq·ruby
墨北小七19 小时前
小说大模型的分布式训练——张量并行架构设计与实现
分布式
豆豆19 小时前
政务服务平台站群一体化解决方案
大数据·分布式·微服务·cms·政务·网站管理系统·站群cms
昵称暂无120 小时前
分布式事务难题:Seata框架在微服务中的落地实践
分布式·微服务·架构
都说名字长不会被发现20 小时前
分布式场景下的数据竞争问题与解决方案
分布式·乐观锁·悲观锁·redission·redis 分布式锁·数据版本
甘露s20 小时前
分布式与可重入性的一些问题
分布式
juniperhan20 小时前
Flink 系列第 3 篇:核心概念精讲|分布式缓存 + 重启策略 + 并行度 底层原理 + 代码实战 + 生产规范
大数据·分布式·缓存·flink
想你依然心痛20 小时前
HarmonyOS 5.0 IoT开发实战:构建分布式智能设备控制中枢与边缘计算网关
分布式·物联网·harmonyos