把书读薄(kafka权威指南 第一章)
kafka是用来干嘛的?
一个系统通常拥有许多的应用场景,比如聊天,购物,前端交互等,每个场景的数据进行单独分析的时候需要有各自的队列来搜集数据,然后分发给各自的后台来处理数据,各自的维护成本大,kafka则可以用来解决这些问题,它提供了多个数据的入口,并可以分发给下游多个地方消费
kafka的基本概念有哪些?
- 消息:kafka的数据单元【相当于表的一条记录】。这个数据没有特别的格式,按照字节存储消息模式:对字节形式消息的一种结构定义,便于理解
- 批次:一组消息
- 主题:消息的分类
- 分区:消息的记录,一个主题包含多个分区,分区之间不能保证顺序,但是一个分区可保证有序
- 偏移量:消息最后读取的地方
- 消费者群组:一个或者多个消费者共同读取一个主题,它保证一个分区只被一个消费者使用
- 消费者对分区的所有权:消费者与分区之间的映射关系
- broker:一个独立的kafka服务器
kafka优点有哪些
1. 支持多个生产者
2. 支持多个消费者从一个单独的消息流上读取数据,而且消费者之间不会相互影响。如果消费者群主,可以保证整个群组对每个给定的消息只处理一次
3. 消息可以落地磁盘,如果消费者被关闭了,可以从上次停止的地方继续读取
4. 支持broker的扩展
5. 能保证亚秒级的消息延迟
版权声明:本文为weixin_39687783原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。