Kafka入门系列—2. topic、消费者组等重要概念

消息队列是生产者向消息队列发送消息,消费者从消息队列拉取(pull)消息。

  1. 生产者
    生产者是消息队列的数据源,可以向其发送消息,如字符串、二进制数据等。

  2. 消费者
    消费者的数据源就是Kafka,于是通过Kafka实现了生产者和消费者两个系统的解耦。

  3. broker
    部署了Kafka的server称为broker。Kafka分布式部署就有多台broker。

  4. 主题topic

  • topic是字符串,它将消息进行分类、存储
  • 多个生产者可以向同一个topic发送消息
  • 多个消费者可以订阅同一个topic
  • 每一条消息一定属于某一个topic
  • 一个topic可以包含多个消息
  • 通过topic可以实现生产者和消费者之间有针对性的发送和订阅
  1. 消息
  • 消息必须指定属于哪个topic
  • 由key和value构成。key用来将消息分配到topic的指定分区中。
  1. Kafka集群
    由多台broker组成,它们之间通过心跳检测其他机器状态。

  2. 控制器

  • 多台broker中会有一台broker作为控制器,它管理Kafka的分区、副本等。
  • 其他borker会监听控制器的状态,当前控制器异常时会使用选举算法选出新的控制权。
  1. 消费者组
  • 一个消费者只能属于一个消费者组
  • 单播:消费者组所订阅的topic只能由其中的一个消费者消费。订阅同一topic的多个消费者组互不影响。
  • 广播:多个消费者消费同一个topic,那它们一定属于不同的消费者组。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Kafka是当前分布式系统中最流行的消息中间件之一,凭借着其高吞吐量的设计,在日志收集系统和消息系统的应用场景中深...
    Dali王阅读 510评论 0 0
  • 一、入门1、简介Kafka is a distributed,partitioned,replicated com...
    HxLiang阅读 3,664评论 0 9
  • 以下内容部分翻译至 http://kafka.apache.org/intro kafka介绍 我们认为,一个流处...
    若与阅读 8,851评论 0 22
  • 什么是消息系统? 早期两个应用程序间进行消息传递需要保证两个应用程序同时在线,并且耦合度很高。为了解决应用程序不在...
    Java小铺阅读 1,281评论 0 2
  • 几个月不工作这几天都不会聊天了,怎么聊怎么没有感觉,脑子没有自己的思考和思路,屡不清路线,有几个有意向顾客找我聊,...
    心月Ulianyoga阅读 255评论 0 0

友情链接更多精彩内容