1、kafka概述

1.1 kafka简介

        Apache Kafka是一个快速的、可扩展的、高吞吐的、可容错的分布式“发布-订阅”消息系统,使用Scala和java语言编写,能够将消息从一个端点传递到另一个端点,较之传统的中间件(例如:ActiveMQ、RabbitMQ),Kafka具有高吞吐量、内置分区、支持消息副本和高容错的特性,非常适合大规模消息处理应用程序。

        Kafka官网:http://kafka.apache.org/

 

1.2 Kafka系统架构

分布式消息系统kafka概述

 

1.3 应用场景

1.3.1 用户的活动跟踪

       用户在网站的不同活动消息发布到不同的主题中心,然后可以对这些消息进行实时监测、实时处理。当然,也可以加载到Hadoop或离线处理数据仓库,对用户进行画像。像淘宝、天猫、京东这些大型电商平台,用户的所有活动都要进行追踪的。

 

1.3.2 日志聚合

分布式消息系统kafka概述


1.3.3 限流削峰

分布式消息系统kafka概述

 

1.3.4 高吞吐率实现

Kafka与其他MQ相比,最大的特点就是高吞吐率。为了增加存储能力,Kafka将所有的消息都写入到了低速大容量的硬盘。按理说,这将导致性能损失,但实际上,Kafka仍然可以保持超高的吞吐率,并且其性能并未受到影响。其主要采用如下方式实现了高吞吐率。

  1. 顺序读写:Kafka将消息写入到了分区partition中,而分区中的消息又是顺序读写的。顺序读写要快于随机读写。
  2. 零拷贝:生产者、消费者对于Kafka中的消息是采用零拷贝实现的。
  3. 批量发送:Kafka允许批量发送模式。
  4. 消息压缩:Kafka允许对消息集合进行压缩。

 

老铁要是觉得我的笔记总结不错的,可以持续关注下一章节:Kafka原理与过程

 

相关文章:

  • 2021-11-19
  • 2020-05-30
  • 2021-10-02
  • 2021-11-01
  • 2021-05-20
  • 2018-08-26
  • 2021-11-16
  • 2021-10-17
猜你喜欢
  • 2018-04-25
  • 2018-08-21
  • 2021-08-08
  • 2021-09-27
  • 2020-10-21
  • 2019-01-06
  • 2019-12-28
  • 2021-12-15
相关资源
相似解决方案