复习kafka

Kafka 介绍

Kafka 是一种分布式的,基于发布/订阅的消息系统。它最初由 LinkedIn 开发,并于 2011 年开源。Kafka 的设计目标是提供一种高效、可靠的消息传输机制,能够处理大量的实时数据。

Kafka 基本概念

  1. Producer:生产者,负责将消息发布到 Kafka 主题中。

  2. Consumer:消费者,负责从 Kafka 主题中订阅消息并进行处理。

  3. Broker:Kafka 服务器,负责存储和管理消息。

  4. Topic:主题,是消息的分类,类似于邮件的标签。

  5. Partition:分区,是 Kafka 中存储消息的单元,每个主题可以被分为多个分区。

  6. Offset:偏移量,是每个分区中消息的唯一标识。

    Kafka 工作原理

  7. 生产者将消息发送到 Kafka 服务器的指定主题中。

  8. Kafka 服务器将消息存储到对应的分区中,并为每个消息分配一个唯一的偏移量。

  9. 消费者通过订阅主题来接收消息,并根据偏移量来标识已经消费的消息。

  10. 消费者可以按照自己的需求来处理消息,例如将消息写入数据库,或者进行实时分析。

    Kafka 优势

  11. 高吞吐量:Kafka 能够支持每秒百万级别的消息处理。

  12. 可靠性:Kafka 提供了数据的冗余存储和容错机制,保证消息不丢失。

  13. 分布式:Kafka 是一个分布式系统,支持水平扩展,可以轻松应对大规模的数据处理需求。

  14. 实时性:Kafka 支持实时的消息传输,保证消息的实时性。

  15. 可扩展性:Kafka 提供了丰富的 API 和插件,方便用户进行二次开发和扩展。

    Kafka 应用场景

  16. 日志处理:Kafka 可以用于收集和处理大规模的日志数据,例如网站日志、应用日志等。

  17. 数据传输:Kafka 可以用于在不同的系统之间传输数据,例如将数据从数据库同步到数据仓库。

  18. 实时数据处理:Kafka 可以用于实时处理和分析数据,例如实时监控、实时推荐等。

  19. 分布式事务:Kafka 可以用于实现分布式事务,保证数据的一致性。

    Kafka 总结

    Kafka 是一种非常强大的分布式消息系统,它具有高吞吐量、可靠性、实时性、可扩展性等优势,被广泛应用于日志处理、数据传输、实时数据处理、分布式事务等领域。通过对 Kafka 的学习,我们了解了它的基本概念、工作原理、优势和应用场景。在以后的工作中,我们可以根据实际需求来选择是否使用 Kafka,以及如何更好地使用 Kafka 来解决问题。

    Kafka 动画演示

  20. 篮球比赛,实况转播相当于消费者,不同的移动端看比赛相当于是消费者。

  21. 数据都写入队列中,队列相当于是硬盘

  22. 单队列转播效率太低,可以搞多个队列

  23. 生产者将不同比赛的信息发送到不同的队列,消费者自主选择队列

  24. 这些不同的队列在kafka内分成不同的分区partition,队列整体叫做topic

  25. 分区的每条记录叫做record

  26. Partition key相当于比赛的队

  27. 每条消息在分区中的位置被称为消息的offset,顺序从0开始单调递增

  28. 消费者如何消费数据

  29. 每个消费者可以topic中所有的partition

  30. 消费者进行划分,同一个的组的数据只能去指定的分区中消费

  31. Kafka如何保障数据的高可用?

分区存在副本,每个副本的功能是备份。

相关推荐
小王同学mf2 分钟前
Kafka生产者如何提高吞吐量?
分布式·kafka
The博宇32 分钟前
大数据面试题--kafka夺命连环问
大数据·kafka
Mindfulness code38 分钟前
Kylin Server V10 下自动安装并配置Kafka
大数据·kafka·kylin
songqq2739 分钟前
【快速入门】Kafka的安装部署
分布式·kafka
天冬忘忧1 小时前
Spark 中 RDD 的诞生:原理、操作与分区规则
大数据·分布式·spark
黄俊懿3 小时前
【架构师从入门到进阶】第一章:架构设计基础——第五节:架构演进(缓存到微服务)
分布式·后端·缓存·微服务·架构·系统架构·架构设计
songqq274 小时前
kafka面试夺命30问
分布式·面试·kafka
二进制杯莫停4 小时前
PaaS云原生:分布式集群中如何构建自动化压测工具
分布式·云原生·paas
不写是真记不住啊7 小时前
kafka生产消费问题
分布式·kafka
大数据编程之光7 小时前
【spark面试题】RDD容错机制
大数据·分布式·spark