Kafka
文章平均质量分 81
chayangdz
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
kafka系列-日志存储
kafka中的消息,是以主题进行归类的,每个主题分为一个或多个分区,主题和分区是逻辑上的概念。消息在发送时,会按照规则追加到其中一个分区中。 分区里的每一条消息,都会被分配一个唯一的序列号,也就是偏移量(offset) 分区是逻辑上的概念,往分区追加消息时,其实是写到日志(Log)中,为了防止日志过大,kafka还有日志分段(LogSegment)的概念,Log在物理上是以文件夹的形式存储,每个LogSegment对应于磁盘上的一个日志文件和两个索引文件,以及其他文件。 kafka追加消息是顺序写,由于L原创 2021-02-15 11:36:29 · 486 阅读 · 0 评论 -
kafka系列-副本机制的可靠性分析
简介 kafka提供了多副本机制,实现了容灾能力,提升可用性和可靠性。副本分为两类,一类是leader副本,另一类是follower副本,每个分区创建时都需要选举一个leader副本,没有选上leader副本的都是follower副本。 follower副本不对外提供服务,它唯一的任务就是异步的从leader副本拉取消息,写入自己的日志,保持和leader副本的同步。 当leader故障时,可以从符合条件的follower副本中重新选举leader副本。 既然follower副本是异步拉取消息进行同步的,那原创 2021-02-15 11:32:16 · 462 阅读 · 0 评论 -
kafka系列-主题和分区
使用kafka的同学,一定会经常接触到主体和分区这两个概念,这是kafka中最核心的两个概念了。 主题作为一个逻辑容器,对消息进行归类,主题下又可以分成若干个分区。所以kafka的消息可以看成是三级的结构:主题-分区-消息。 每个分区下可以存在若干个副本,副本用来进行数据备份,提升容灾能力。 分区可以看成是一个只能追加写的日志文件。(当然,分区是逻辑上的概念,日志文件才是物理存在的) 分区的作用,是提供负载均衡的能力,类似于es的分片。不同的分区会被分配到不同的Broker节点上,这样就可以提升系统的吞吐量原创 2021-02-15 10:07:02 · 1682 阅读 · 1 评论 -
kafka系列-基本概念
kafka是一个多分区、多副本,基于Zookeeper协调的分布式消息系统。 两种消息模型 在说kafka之前,先说下常见的两种消息模型,一种是点对点模型,一种是发布订阅模型。 点对点(P2P):Point-to-Point,指的是消息被消费后,队列中就不会在存储这一条消息。所以同一条消息只能被一个消费者消费。队列可以支持多个消费者,但是消费者也同样不可能消费已经被消费过的消息。 发布订阅:有主题的概念,消息发布者将消息发布到某个主题,消息订阅者从主题中订阅消息。通过主题,消息发布者和订阅者保持相对独立。多原创 2021-02-15 09:58:08 · 344 阅读 · 0 评论
分享