Kafka不支持读写分离的原因是什么

参考答案

Kafka不支持读写分离的原因:

Kafka 中,生产者写入消息、消费者读取消息的操作,都是与 leader 副本进行交互的,实现的是一种主写主读的生产消费模型。

Kafka 不支持主写从读,主写从读有两个缺点:

1.    数据一致性问题

  • 数据从主节点转到从节点必然会有一个延时的时间窗口,这个时间窗口会导致主从节点之间的数据不一致。
  • 某一时刻,在主节点和从节点中 A 数据的值都为 X, 之后将主节点中 A 的值修改为 Y,那么在这个变更通知到从节点之前,应用读取从节点中的 A 数据的值并不为最新的 Y,由此便产生了数据不一致的问题。

2.   延时问题

  • 类似 Redis 这种组件,数据从写入主节点到同步至从节点中的过程,需要经历:网络→主节点内存→网络→从节点内存这几个阶段,整个过程会耗费一定的时间。
  • 而在 Kafka 中,主从同步会比 Redis 更加耗时,它需要经历:网络→主节点内存→主节点磁盘→网络→从节 点内存→从节点磁盘这几个阶段。对延时敏感的应用而言,主写从读的功能并不太适用。

以上,是 Kafka 面试题【Kafka不支持读写分离的原因是什么】的参考答案。

输出,是最好的学习方法

欢迎在评论区留下你的问题、笔记或知识点补充~

—end—

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧