kafka为什么不支持读写分离?

kafka为什么不支持读写分离?

在kafka中,生产者写入消息,消费者读取消息的操作都是与 leader 副本进行交互的,从而实现的是一种主写主读的生产消费模型。kafka不支持读写分离,也就是主写从读。

读写分离有以下不足:

(1) 主从延时。类似 Redis ,数据从写入主节点,再同步到从节点中的过程需要耗费一些时间。如果对延时的要求比较高,读写分离并不太适用。

(2) 数据一致性问题。由于主节点数据同步到从节点,需要一定时间。主从节点之间的数据不一定会一致。

kafka 只支持主写主读,有几个优点:

(1) 负载均衡。

读写分离可以均摊一定的负载,却不能做到完全的负载均衡,比如对于写压力很大而读压力很小的情况,从节点只能分摊很少的负载压力,而绝大部分压力还是主节点上。而kafka 的主写主读,可以做到负载均衡。

(2) 没有主从延时的影响。

(3) 副本稳定的情况下,不会出现数据不一定的情况。

资料来源:

《深入理解kafka :核心设计与实践原理》

相关推荐
nightunderblackcat14 小时前
新手向:实现验证码程序
java·spring boot·spring·java-ee·kafka·maven·intellij-idea
a5876915 小时前
消息队列(MQ)高级特性深度剖析:详解RabbitMQ与Kafka
java·分布式·面试·kafka·rabbitmq·linq
hmb↑15 小时前
Kafka 3.9.x 安装、鉴权、配置详解
分布式·kafka·linq
java干货15 小时前
还在重启应用改 Topic?Spring Boot 动态 Kafka 消费的“终极形态”
spring boot·kafka·linq
lifallen15 小时前
KafkaStreams 计算图节点设计:ProcessorNode、SourceNode、SinkNode
java·数据结构·算法·kafka·apache
zhysunny19 小时前
消息三剑客华山论剑:Kafka vs RabbitMQ vs RocketMQ
kafka·rabbitmq·rocketmq
在未来等你1 天前
Kafka面试精讲 Day 13:故障检测与自动恢复
大数据·分布式·面试·kafka·消息队列
庄小焱1 天前
大数据存储域——Kafka实战经验总结
大数据·kafka·大数据存储域
cui_win1 天前
基于Golang + vue3 开发的 kafka 多集群管理
分布式·kafka
iiYcyk1 天前
kafka特性和原理
分布式·kafka