kafka中的一些主要概念介绍

7 篇文章 0 订阅
1 篇文章 0 订阅

      Kafka是一个基于发布/订阅的分布式消息系统,主要用于大数据领域,当然除了作为一个消息队列功能之外,也可以用于日志收集,追踪监控、流处理(轻量级的场景)等需求操作,下面用图表与文字的方式大概介绍一下kafka作为消息队列的一些基本概念知识。

 

一、生产者,Broker,消费者

1, Producer消息生产者向broker中发送消息。

2,Broke(一个单独的kafka server / 服务节点)接收信息后,分配offser,数据持久化在磁盘上,并且接收其他消费者、broker的请求,多个broker组成一个cluster集群对外服务;

每个cluster选举其中一个broker作为controller leader(一主多从)管理分区、副本、数据等变化状态。

3,Consumer消费者向broker获取信息,多个consumer组成一个Consumer group,

保证其订阅的Topic中每一个分区只被分配给此Group中的一个消费者处理。

 

二、Topic、Partition分区

1,Topic用于存储消息,可理解为一个消息的集合,topic存储在broker中,一个topic可以有多个partition分区(至少一个分区),一个topic可以有多个生产者向其push消息,一个topic可以有多个消费者向其pull消息,一个topic可以存在于一个或者多个broker中,注意避免一个topic中的分区数量大于集群中的bocker数量以防止集群数据不均衡。

2,Partition是topic的子集,不同分区分配在不同的broker上进行水平扩展从而增加kafka并行处理能力,同topic下的不同分区信息是不同的,同一分区信息是有序的;

每个分区有一个或者多个副本,选举一个leader,副本从leader中拉取数据更新自己的log中(每个分区逻辑上对应一个log文件夹),消费者向leader中pull信息;

整个副本的集合的子集又叫ISR集合,当副本与leader的消息差值低于指定阈值时,副本集合则为ISR集合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值