Kafka入门

Kafka定义

传统定义:分布式的基于发布/订阅模式的消息队列,主要用于大数据实时处理领域(埋点)
新定义:开源的事件流平台,作为高性能的数据管道、流分析、数据集成和关键任务应用(不仅消息队列,还能在里面处理数据)
发布/订阅:Topic

传统消息队列应用场景

缓存/消峰:大批量一点点处理
解耦:多个数据源对应多个接收,无消息队列必须每个数据源做多个匹配接口,有消息队列直接和消息队列对接即可
异步通信:重要节点处理完直接返回成功,其他部分放消息队列慢慢发出去处理(多线程不够,且服务挂了易信息丢失)

两种模式

点对点:消费者对应一个消息队列,获取消息后直接将队列内已消费的清除
发布/订阅模式:可以有多个Topic,数据被消费后不删除(broker自己决定到期时间规则),多个消费者可同时订阅一个Topic重复消费

基础架构

一个集群内多个broker,每个broker存一个Topic一部分
Topic的分片会划分为leader和follower,平时只拉取leader,leader挂了follower转正
Zookeeper管理集群,需要提供broker id和内部topic信息(新版本也可以不用Zookeeper,但不推荐)
消费者组的概念,一个组内并行消费,但一个分区的消息只能由一个消费者组内一个消费者用,不能一个组内重复薅一个羊毛

![在这里插入图片描述](https://img-blog.csdnimg.cn/41efd010191d4c028574386fe5520d54.png

生产者消费者

订阅一般只消费订阅开始时生产的的增量信息,但也可以从历史信息开始消费

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值