科技速递|Kafka详解(一、核心概念)
本文主要目的是带你了解kafka , 知道Kafka有什么特性 , 能支持高性能、高可用 。 计算分四章来讲 。
第一章主要介绍Kafka的一些核心概念
第二章介绍生产者原理
第三章介绍broker原理
第二章介绍消费者原理
一、为什么需要消息系统
现在做开发应该或多或少都会用到消息系统吧 , 那么消息系统能解决什么问题了?常见使用消息系统主要可以用来解耦 , 这样消息两边就可以进行异步处理 , 而不需要同步进行 。 在访问量比较大的情况下也能应付比较大的流量 。
二、Kafka
【科技速递|Kafka详解(一、核心概念)】kafka是一个分布式消息队列 。 具有高性能、持久化、多副本备份、横向扩展能力 。 最初由Linkedin公司开发 , 于2010年贡献给了Apache基金会并成为顶级开源项目 。
集群
上面便是Kafka的集群架构图 , 从图上便能看出来Kafka的由哪些组成
producer 消息发送端
broker 一个节点便是一个broker
topic 消息发送都需要指定一个主题
partition 分区 , 一个主题会分成多个分区 , 并且每个分区可以设置多个副本 , 已达到高可用 。
副本之间有主从之分 , 读写都是针对主的
consumer 消息消费者
consumer group 消费者组 , 一个分区的数据只能被一个消费者组中的消费者消费 。 多个消费者构成一个消费者组 , 提高吞吐量 , 同时又能避免重复消费
zookeeper 负载broker节点选举为controller , 并存储元数据信息
controller broker集群中需要选择一个broker为controller来负载整个集群的控制 , 比如说数据迁移 , broker的扩容缩容等 , 相当于也是主从架构的
Coordinator consumer group会选择一个broker作为Coordinator , 负责监控各个消费者 , 也会选择consumer中的leader , consumer的leader制定消费策略 , 并由Coordinator下发给其他consumer
推荐阅读
- 所持股份|万兴科技:公司控股股东、实际控制人吴太兵质押150万股
- 发布公告|数量过半!博创科技:天通股份累计减持约150万股
- 英雄科技聊数码|蔡崇信有实力买下篮网,那身价3200亿的马云,能买下几支NBA球队
- 科技前沿阵地|涨疯了!海思安防芯片遭哄抬“围剿”
- 月影浓|吴亦凡机械造型走秀 垫肩披风搭银框眼镜科技感足
- 中国历史发展过程|中国历史发展过程.中国的科技史界过去半个多世纪
- 天津|桂发祥:不再持有昆汀科技股份
- 消费|减持!天通股份:减持博创科技约32万股
- 处罚|老周侃股:吉鑫科技大股东应补偿踩雷投资者
- 华中科技大学|杯具!超本科线95分,本科有路不走,却梦幻般碰瓷,撞开专科的门
