zoukankan      html  css  js  c++  java
  • Kafka 基本概念学习笔记

    一. 什么是Kafka

    面向数据流的生产,转换,存储,消费的整体流处理平台

    二、Kafka三大特性

    1、发布和订阅数据的流,类似于消息队列,消息系统

    2.、数据流存储平台

    3、当数据产生的时候,对数据处理

    三、Kafka应用于

    1. 构建数据流管道,应用直接有比较强的应用关系

    2、构建实时数据处理应用,能够转换或者响应数据流

    四 Kafka基本概念

    Producer:消息和数据的生产者,向Kafka的一个topic发布消息的进程/代码/服务

    Consumer: 消息和数据的消费者,订阅数据(Topic)并且处理发布的消息的进程/代码/服务

    Consumer Group:逻辑概念,对于同一个topic,会广播给不同的group,一个group中,只有一个consumer可以消费该消息。

    Broker:物理概念,Kafka集群中的每个Kafka节点

    Topic:逻辑概念,Kafka消息的类别,对数据进行区分、隔离

    Partition:物理概念,Kafka下数据储存的基本单元。一个Topic数据,会被分散存储到多个Partition,每一个Partition是有序的。

      1)每一个Topic被切分为多个Partitions

         2)消费者数目少于或等于Partition的数目

      3)Broker Group中的每一个Broker保存Topic的一个或多个Partitions

      4)Consumer Group中的仅有一个Consumer读取Topic的一个或者多个Partitions,并且是唯一的Consumer

    Replication:同一个Partition可能会有多个Replica,多个Replica之间数据是一样的

      1)当集群中的有Broker挂掉的情况,系统可以主动的使用Replicas提供服务

      2)系统默认设置每一个Topic的replication系数为1,可以在创建Topic时单独设置

       Replication特点

      1)Replication的基本单位是Topic的Partition

      2)所有的读和写多从Leader进,Followers只是做为备份

      3)Follower必须能够及时复制Leader的数据

      4) 增加容错性与可扩展性

    Replication Leader:一个Partition的多个Replica上,需要一个Leader负责该Partition上与Producer和Consumer交互

    ReplicaManager:负责管理当前broker所有分区和副本的信息,处理KafkaController发起的一些请求,副本状态的切换、添加/读取消息等。

    五、Kafka基本结构

    Producer Api

    Consumer Api

    Streams Api

    Connectors Api

    六、Kafka消息结构

     七、Kafak特点

     分布式

       多分区

       多副本

       多订阅者

       基于Zookeeper调度

    高性能

      高吞吐量

      低延迟

      高并发

      时间复杂度为O(1)

    持久性和可扩展性

      数据可持久化

      容错性

      支持在线水平扩展

      消息自动平衡

  • 相关阅读:
    解决 Ant Sword-HTTPS 证书失效(cert_has_expired)连不上问题
    通达OA 11.2后台getshell漏洞复现
    通达OA 任意文件上传+文件包含导致RCE
    xxl-job <=2.0.2 反序列化漏洞
    代理模式学习
    javassist 使用笔记
    CommonsCollections3 反序列化利用链分析
    CommonsCollections2 反序列化利用链分析
    CommonsCollections1 反序列化利用链分析
    httpd通过ajp协议反向代理tomcat
  • 原文地址:https://www.cnblogs.com/linlf03/p/9631670.html
Copyright © 2011-2022 走看看