admin 管理员组文章数量: 1086019
2024年5月30日发(作者:oracle表连接方式)
kafka作用是什么(史上最全的kafka知识解析)
什么是Kafka
Kafka基于Scala和Java语言开发,设计中大量使用了批量处理和异步的思想,最
高可以每秒处理百万级别的消息,是用于构建实时数据管道和流的应用程序。
一文快速了解Kafka
Kafka的应用场景
Kafka是一个分布式流式处理平台。流平台具有三个关键功能:
1. 消息队列:发布和订阅消息流,这个功能类似于消息队列,这也是Kafka被
归类为消息队列的原因。
2. 容错的持久方式存储记录消息流:Kafka会把消息持久化到磁盘,有效避免
消息丢失的风险。
3. 流式处理平台:在消息发布的时候进行处理,Kafka提供了一个完整的流式
处理类库。
Kafka主要有两大应用场景:
1. 消息队列:建立实时流数据管道,可靠地在系统或应用程序之间获取数据。
2. 数据处理:构建实时的流数据处理程序来转换或处理数据流。
一文快速了解Kafka
注: Kafka在2.8预览版中,采用Raft元数据模式,取消了对Zookeeper
的依赖。
Kafka的版本里程碑
版本
号
0.8
0.8.2
0.9
0.10
0.11
备注
引入了副本机制,成为了一个真正意义上完备的分布式高可靠消息队列
解决方案
新版本 Producer API,即需要指定 Broker 地址的 Producer
增加了基础的安全认证 / 权限,Java 重写了新版本消费者 API
引入了 Kafka Streams
提供幂等性 Producer API 以及事务(Transaction) API,对 Kafka 消息
格式做了重构。
1.0
2.0
Kafka Streams 的各种改进
Kafka Streams 的各种改进
Kafka的优势
•
•
•
•
高吞吐、低延时:这是 Kafka 显著的特点,Kafka 能够达到百万级的消息吞
吐量,延迟可达毫秒级。
持久化存储:Kafka 的消息最终持久化保存在磁盘之上,提供了顺序读写以
保证性能,并且通过 Kafka 的副本机制提高了数据可靠性。
分布式可扩展:Kafka的数据是分布式存储在不同broker节点的,以topic
组织数据并且按Partition进行分布式存储,整体的扩展性都非常好。
高容错性:集群中任意一个 broker 节点宕机,Kafka 仍能对外提供服务。
Kafka基本结构
Kafka具有四个核心API:
1. Producer API: 发布消息到1个或多个topic(主题)中。
2. Consumer API:来订阅一个或多个topic,并处理产生的消息。
3. Streams API:充当一个流处理器,从1个或多个topic消费输入流,并生
产一个输出流到1个或多个输出topic,有效地将输入流转换到输出流。
4. Connector API:可构建或运行可重用的生产者或消费者,将topic连接到现
有的应用程序或数据系统。例如,连接到关系数据库的连接器可以捕获表的
每个变更。
一文快速了解Kafka
Kafka的关键术语
•
•
•
Producer:消息和数据的生产者,向Kafka的一个Topic发布消息的进程/
代码/服务。
Consumer:消息和数据的消费者,订阅数据(Topic)并且处理发布的消息
的进程/代码/服务。
Consumer Group:对于同一个Topic,会广播给不同的Group。在一个
Group中,一条消息只能被消费组中一个的Consumer消费。
Consumer Group中不能有比Partition数量更多的消费者,否则多出的消
费者一直处于空等待,不会收到消息。
一文快速了解Kafka
版权声明:本文标题:kafka作用是什么(史上最全的kafka知识解析) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1717032721a699996.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论