首页 > 其他分享 >kafka为什么不支持读写分离?

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

时间:2024-01-24 22:23:59浏览次数:19  
标签:负载 主写 分离 节点 kafka 读写

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

读写分离有以下不足:

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

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

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

(1) 负载均衡。

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

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

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

资料来源:

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

标签:负载,主写,分离,节点,kafka,读写
From: https://www.cnblogs.com/expiator/p/17985986

相关文章

  • 内存带宽读写工具 Stream
    一.工具介绍前言stream测试得到的是可持续运行的内存带宽最大值,而并不是一般的硬件厂商提供的理论最大值,具有如下特点:1.主要有四种数组运算,测试的内存带宽的性能分别是:数组的复制(Copy)、数组的尺度变换(Scale)、数组的矢量求和(Add)、数组的复合矢量求和(Triad)2.数组的值......
  • kafka 学习贴
    为什么要使用Kafka消息队列?解耦、削峰:传统的方式上游发送数据下游需要实时接收,如果上游在某些业务场景:例如上午十点会流量激增至顶峰,那么下游资源可能会扛不住压力。但如果使用消息队列,就可以将消息暂存在消息管道中,下游可以按照自己的速度逐步处理;可扩展:通过横向扩展生产者......
  • centos7部署kafka服务
    centos7下面安装kafka服务,用于自己测试1.安装JAVA环境yum-yinstalljava-1.8.0-openjdk2.下载代码curl-okafka_2.13-3.6.1.tgzhttps://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz3.更改配置运行tar-xfkafka_2.13-3.6.1.tgzcdkafka_2.13-3.6.1se......
  • kafka常用命令
    进入kafka服务bin目录查看主题./kafka-topics.sh--list--bootstrap-server10.1.1.2:9092创建主题./kafka-topics.sh--bootstrap-server10.1.1.2:9092--create--topicmytopic--partitions1查看消费者列表-list./kafka-consumer-groups.sh--bootstrap-server10.1.1.2......
  • 第三章 Spring Boot 整合 Kafka消息队列 消息者
    ​ 前言        Kafka是一个消息队列产品,基于Topicpartitions的设计,能达到非常高的消息发送处理性能。本文主是基于SpirngBoot封装了Apache的Kafka-client,用于在SpringBoot项目里快速集成kafka。 一、Kafka是什么?ApacheKafka是分布式发布-订阅消息系统。......
  • Zookeeper集群 +Kafka集群 之(Kafka集群)
    Kafka集群 消息队列(中间件)类型与特性 #Kafka概述#为什么需要消息队列(MQ)主要原因是由于在高并发环境下,同步请求来不及处理,请求往往会发生阻塞。比如大量的请求并发访问数据库,导致行锁表锁,最后请求线程会堆积过多,从而触发toomanyconnection错误,引发雪崩效应。我......
  • 【问题解决】Kafka报错 Bootstrap broker x.x.x.x:9092 (id: -1 rack: null) disconne
    【问题解决】Kafka报错Bootstrapbrokerx.x.x.x:9092(id:-1rack:null)disconnected和服务器连接已经断开。可能kafka服务器停止问题复现近日针对某一客户需求开发了一个需要使用Kafka的功能,功能是什么暂且不论,在本地虚机的Kafka连接一切正常遂放到测试服务器上验证功......
  • Kafka【问题 02】KafkaTemplate 报错 Bootstrap broker localhost:9092 (id: -1 rack:
    Kafka【问题02】KafkaTemplate报错Bootstrapbrokerlocalhost:9092(id:-1rack:null)disconnected问题解决1.报错信息主要的报错信息:Connectiontonode-1(localhost/127.0.0.1:9092)couldnotbeestablished.Brokermaynotbeavailable.和Bootstrapbrok......
  • Zookeeper集群 +Kafka集群 之 (Zookeeper集群)
    Zookeeper集群+Kafka集群 Zookeeper#Zookeeper定义Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。#Zookeeper工作机制Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受......
  • kafka入门(十):副本数据同步
    副本副本(Replica),指的是分布式系统对数据和服务提供的一种冗余方式。Kafka通过多副本机制实现故障自动转移,在Kafka集群中某个broker节点失效的情况下仍然保证服务可用。失效副本在ISR集合之外,也就是处于同步失效或功能失效(比如副本处于非存活状态)的副本统称为失效副本,失效副本......