什么是卡夫卡?

  

通过卡夫卡的快速入门https://www.cnblogs.com/tree1123/p/11150927.html

  

能了解到卡夫卡的基本部署,使用,但他和其他的消息中间件有什么不同呢?

  

卡夫卡的基本原理,术语,版本等等都是怎么样的?到底什么是卡夫卡呢?

  

一、卡夫卡简介

  http://kafka.apache.org/intro

  

2011年,“开源,11月1日2017 1.0版本发布7月30日,2018年2.0版本发布

  

参考官网的图:

  

什么是卡夫卡?

  

卡夫卡?用于构建实时数据管道和流式应用程序。它具有水平可扩展性,容错性,速度极快,并在数千家公司投入生产。

  

卡夫卡官网最新的定义:Apache卡夫卡?分布式流媒体平台是

  

也就是分布式流式平台。

  

介绍:

  

三个特点:

  
      <李>发布和订阅流记录,类似于一个消息队列或企业消息传递系统。   <李>流的记录存储在一个容错耐用。   <李>过程流发生时的记录。   
  

消息持久化流处理

  

两类应用:

  
      <李>   

    建筑之间可靠地获取数据的实时流数据管道系统或应用程序

      李   <李>   

    构建实时流媒体应用程序变换或反应的数据流

      

    实时流数据管道实时流应用程序

      

    ?   

    几个概念

      
        <李>   

      卡夫卡作为集群运行alt="什么是卡夫卡? ">

        

      客户端服务器通过tcp协议支持多种语言

        

      主题和日志

        

      一个主题可以有零个、一个或多个消费者订阅写入它的数据

        

      对于每个主题,卡夫卡群集都维护一个分区日志

        

      每个分区都是一个有序的,不可变的记录序列,不断附加到结构化的提交日志中。

        

      分区中的记录每个都被分配一个称为偏移的顺序ID号,它唯一地标识分区中的每个记录。

        

      什么是卡夫卡?

        

      卡夫卡集群持久地保留所有已发布的记录,无论它们是否已被消耗,使用可配置的保留期。可以配置这个时间。

        

      卡夫卡的性能在数据大小方面实际上是恒定的,因此长时间存储数据不是问题。

        

      什么是卡夫卡?

        

      每个消费者保留的唯一元数据是该消费者在日志中的偏移或位置。

        

      这种偏移由消费者控制:通常消费者在读取记录时会线性地提高其偏移量,但事实上,由于消费者控制位置,它可以按照自己喜欢的任何顺序消费记录。例如,消费者可以重置为较旧的偏移量以重新处理过去的数据,或者跳到最近的记录并从“现”在开始消费。

        

      这使得消费者特别容易使用。

        

      生产者:

        

      生产者将数据发布到他们选择的主题。

        

      为了负载均衡,可以选择多个分区。

        

      消费者:

        

      消费者组

        

      什么是卡夫卡?

        

      传统的消息队列发布订阅都有弊端

        

      队列可以扩展但不是多用户,发布订阅每条消费发给每个消费者,无法扩展。

        

      但是卡夫卡这个模式解决了这些问题

        

      卡夫卡确保使用者是该分区的唯一读者并按顺序使用数据,由于有许多分区,这仍然可以

        

      平衡许多消费者实例的负载。

        

      作为存储系统

        

      作为流处理系统

        

      二,常见使用

        http://kafka.apache.org/uses

        
      消息h5> 卡夫卡可以替代更传统的消息代理。消息代理的使用有多种原因(将处理与数据生成器分离,缓冲未处理的消息等)。与大多数消息传递系统相比,卡夫卡具有更好的吞吐量,内置分区,复制和容错功能,这使其成为大规模消息处理应用程序的理想解决方案。

        

      根据我们的经验,消息传递的使用通常相对较低,但可能需要较低的端到端延迟,并且通常取决于卡夫卡提供的强大的耐用性保证。

        

      在这个领域,卡夫卡可与传统的消息传递系统(如ActiveMQ或RabbitMQ)相媲美。

        
      网站活动跟踪h5> 站点活动(页面查看,搜索或用户可能采取的其他操作)发布到中心主题,每个活动类型包含一个主题。实时处理,实时监控以及加载到Hadoop或离线数据仓库系统以进行离线处理和报告。

      什么是卡夫卡?