Kafka简介

一、Kafka特点

  • 为发布和订阅提供高吞吐量
  • 消息持久化,将消息持久化到磁盘,可用于批量消费
  • 分布式,支持服务器间的消息分区以及分布式消费
  • 消息消费采用PULL模式:消息被处理的状态是在Consumer端维护的,而不是由服务器端维护的,Broker 无状态,Consumer 自己保存 offset
  • 支持Online和Offline场景,同时支持离线数据处理和实时数据处理

二、基本概念

  • Broker:Kafka集群中的一台或多台服务器,一个broker中可以有多个Topic
  • Topic:发布到Kafka的每条消息都有一个类别,这个类别被称为Topic(物理上,不同Topic的消息分开存储;逻辑上,虽然一个Topic的消息被保存在一个或多个Broker上,但用户只需指定消息的Topic即可生产或消费数据,而不必关心数据存于何处)
  • Pratition:物理上的Topic分区,一个Topic可以分为多个Partiton,每个Partiton都是一个有序的队列。Partiton中的每条消息都会被分配一个有序的ID(offset)
  • Producer:消息和数据的生产者,可以理解为向Kafka发消息的客户端
  • Consumer:消息和数据的消费者,可以理解为向Kafka去消息的客户端
  • Consumer Group:消费者组,每个消费者都属于一个特定的消费者组(可为每个消费者指定组名,若不指定组名,则属于默认的组)。通过此方法可以实现一个Topic消息的广播(发送给所有的消费者)和单播(发送个任意一个消费者)。一个Topic可以有多个消费者组。Topic的消息会发送到所有的消费者组中,但每个消费者组只会把消息发送给该组的一个消费者。
    • 若要实现广播,只要每个消费者都有一个独立的消费者组就可以了
    • 若要实单播,只要所有的消费者都在同一个消费者组中就行
    • 可以对消费者自由分组,而不需要多次发送消息到不同的Topic

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值