【Java程序员面试专栏 专业技能篇】Kafka核心面试指引

关于Kafka部分的核心知识进行一网打尽,包括Kafka的基本概念,基本架构,工作流程,存储机制,生产策略和消费策略,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示
【Java程序员面试专栏 专业技能篇】Kafka核心面试指引_第1张图片

基本概念

从Kafka的基本定义和应用场景等说起

Kafka 是什么?主要应用场景有哪些?

Kafka 是一个分布式流式处理平台,它被设计用于构建实时的数据管道和流应用程序。Kafka 主要用于处理高吞吐量的数据流,并支持容错处理。流平台具有三个关键功能:

  1. 消息队列【传递消息】:发布和订阅消息流,这个功能类似于消息队列,这也是 Kafka 也被归类为消息队列的原因。
  2. 容错的持久方式存储记录消息流【存储消息】:Kafka 会把消息持久化到磁盘,有效避免了消息丢失的风险
  3. 流式处理平台【处理消息】: 在消息发布的时候进行处理,Kafka 提供了一个完整的流式处理类库

Kafka 主要有两大应用场景:

  • 消息队列:建立实时流数据管道,以可靠地在系统或应用程序之间获取数据

你可能感兴趣的:(Java,程序员面试专栏,java,面试,kafka)