Apache-Kafka简介

您可能感兴趣的文章:分布式

Apache-Kafka简介设计

Apache Kafka安装和使用3d

Apache-Kafka核心概念日志

Apache-Kafka核心组件和流程-协调器cdn

Apache-Kafka核心组件和流程(副本管理器)blog

Apache-Kafka 核心组件和流程-控制器队列

Apache-Kafka核心组件和流程-日志管理器开发

....文档

kafka的定位get

提到kafka,不太熟悉或者稍有接触的开发人员,第一想法可能会以为它是一个消息系统。其实Kafka的定位并不止于此。

Kafka官方文档介绍说,Apache Kafka是一个分布式流平台,并给出了以下解释:

流平台有三个关键的能力:

  • 发布订阅记录流,和消息队列或者企业新消息系统相似。
  • 以可容错、持久的方式保存记录流
  • 当记录流产生时就进行处理

Kafka一般用于应用中的两种广播类型:

  • 在系统和应用间创建实时的数据管道,可以可信赖的获取数据。
  • 创建实时的流应用,能够处理或者响应数据流。

因而可知,kafka给自身的定位并不仅是一个消息系统,而是经过发布订阅消息这种机制实现了流平台。

其实无论kafka给本身的定位如何,他都逃脱不了发布订阅消息的底层机制。本文讲解的重点,也是kafka发布订阅消息的特性。

Kafka和大多数消息系统同样,搭建好kafka集群后,生产者向特定的topic生产消息,而消费者经过订阅topic,可以准实时的拉取到该topic新消息,进行消费。以下图:



Kafka特性

kafka和有如下主要的特性:

  • 消息持久化
  • 高吞吐量
  • 可扩展性

尤为是高吞吐量,是他的最大卖点。kafka之因此可以实现高吞吐量,是基于他自身优良的设计,及集群的可扩展性。后面章节会展开来分析。

Kafka应用场景

  • 消息系统
  • 日志系统
  • 流处理


相关文章
相关标签/搜索