没有合适的资源?快使用搜索试试~ 我知道了~
分布式消息系统Kafka.pdf
需积分: 0 0 下载量 59 浏览量
2023-06-06
13:29:35
上传
评论
收藏 2.92MB PDF 举报
温馨提示
试读
37页
分布式消息系统Kafka.pdf
资源推荐
资源详情
资源评论
2
1.3.1
用户的活动追踪
用户在网站的不同活动消息发布到不同的主题中心,然后可以对这些消息进行实时监测
实时处理。当然,也可加载到 Hadoop 或离线处理数据仓库,对用户进行画像。像淘宝、京
东这些大型的电商平台,用户的所有活动都是要进行追踪的。
1.3.2
日志聚合
1.3.3
限流削峰
kafka
高吞吐率实现
1.4
Kafka 与其它 MQ 相比,其最大的特点就是高吞吐率。为了增加存储能力,Kafka 将所有
的消息都写入到了低速大容的硬盘。按理说,这将导致性能损失,但实际上,kafka 仍可保
持超高的吞吐率,性能并未受到影响。其主要采用了如下的方式实现了高吞吐率。
顺序读写:Kafka 将消息写入到了分区 partition 中,而分区中消息是顺序读写的。顺序
读写要远快于随机读写。
零拷贝:生产者、消费者对于 kafka 中消息的操作是采用零拷贝实现的。
批量发送:Kafka 允许使用批量消息发送模式。
消息压缩:Kafka 支持对消息集合进行压缩。
3
第
2
章
Kafka
工作原理与工作过程
Kafka
基本术语
2.1
对于 Kafka 基本原理的介绍,可以通过对以下基本术语的介绍进行。
2.1.1 Topic
主题。在 Kafka 中,使用一个类别属性来划分消息的所属类,划分消息的这个类称为 topic。
topic 相当于消息的分类标签,是一个逻辑概念。
2.1.2 Partition
分区。topic 中的消息被分割为一个或多个 partition,其是一个物理概念,对应到系统上
就是一个或若干个目录。
partiiton 本身是一个 FIFO 队列,其中的消息是有序的。但,在 Partition 间无法保证消
息的顺序性。
2.1.3 segment
段。将 partition 进一步细分为了若干的 segment,每个 segment 文件的最大大小相等。
2.1.4 Broker
Kafka 集群包含一个或多个服务器,每个服务器节点称为一个 broker。
假设某个 topic 中有 N 个 partition,集群中有 M 个 Broker,broker 与 partition 间的数量
关系:
若 N>=M,且(N%M=0),则每个 broker 上会平均存储 N/M 个 partition。
若 N>M,且(N%M!=0),这其中会出现 broker 上分配的 partition 不平均的情况。这种
情况要避免。
若 N<M,这种情况会出现有的 broker 上没有分到 partition 的情况。
2.1.5 Producer
生产者。即消息的发布者,其会将某 topic 的消息发布到相应的 partition 中。
4
2.1.6 Consumer
消费者。可以从 broker 中读取消息。
一个消费者可以消费多个 topic 的消息。
一个消费者可以消费同一个 topic 中的多个 partition 消息。
一个 partition 允许多个无关消费者同时消费。
2.1.7 Consumer Group
consumer group 是 kafka 提供的可扩展且具有容错性的消费者机制。组内可以有多个消
费者,它们共享一个公共的 ID,即 group ID。组内的所有消费者会协调在一起平均消费订阅
主题的所有分区。
Kafka 可以保证在稳定状态下,一个 partition 中的消息只能被同一个 consumer group 中
的一个 consumer 消费,而一个组内 consumer 只会消费某一个或几个特定的 partition。当然,
一个消息可以同时被多个 consumer group 消费。
总结:
组内 consumer 与 partition 的关系 1:n
partition 与组内 consumer 的关系 1:1
这种设计方式的好处是:实现简单,弊端是:消息分配不均。
组中 consumer 数量与 partition 数量的对应关系如下。
5
2.1.8 Replicas of partition
分区副本。副本是一个分区的备份,是为了防止消息丢失而创建的分区的备份。
剩余36页未读,继续阅读
资源评论
2301_77550592
- 粉丝: 17
- 资源: 7165
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功