Kafka简介

概念

基于发布/订阅模式的分布式消息队列

分布式 基于发布和订阅模式的消息队列
本身最新定位:分布式流式事件处理平台
除了缓存存储数据 还支持了数据流式计算能力 不用

  • 发布/订阅模式


    image.png

多个的生产者发布不同的数据到 topic 队列上(主题队列)
不同的消费者,订阅自己所需要的topic(主题)

  • 使用消息队列的好处
    解耦合
    缓冲, 流量消峰
    异步处理
    日志处理:实时计算场景中将数据缓存到消息队列中,解决大量日志传输的问题。

  • 集群架构
    zk集群 kafka集群


    image.png

    image.png

    主备架构 broker节点 broker-controller主节点
    zk 集群存放 kafka集群上所有元数据
    主节点是由zk选举得到的 leader副本是由 controller 主节点选举得到的

  • 组件
    kafka集群 每个节点叫做broker 主角色叫做controller broker
    producer 生产者
    consumer group 消费者组
    consumer消费者

  • topic如何分布式存储
    topic 主题 数据的分类
    partition分区 主题是分布式存储的 放在不同的broker上
    replication副本
    leader副本 对外读写的 生产者消费者直接打交道
    follower副本 同步leader副本的数据 时刻准备成为leader

另外kafka的数据是存放在页缓存和linu磁盘当中,每个分区的offset是唯一的
磁盘当中每个分区以segment片段存在
xxx.log
xxx.index offset的稀疏索引
xxx.time space 时间戳索引

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Kafka 是一款分布式消息发布和订阅系统,具有高性能、高吞吐量的特点而被 广泛应用与大数据传输场景。 由于 ka...
    不给起这个名字阅读 3,034评论 0 0
  • 一、简介 Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue),主要应用于 大数...
    brayden_yang阅读 2,578评论 0 1
  • Kafka的主要特点:1. 为发布和订阅提供高吞吐量,每秒可产生25万消息(50MB),每秒可处理55万消息(11...
    zi萱阅读 3,980评论 0 2
  • 部分内容参考:《kafka 权威指南》 1.发布订阅 1.1 前言 总所周知,kafka是一个基于发布订阅模式的中...
    秃头猿猿阅读 3,907评论 0 1
  • 一、kafka主要特点如下 同时为发布和订阅提供高吞吐量。 Kafka 的设计目标是以时间复杂度为 0(1 )的方...
    salt丶阅读 8,819评论 0 5

友情链接更多精彩内容