前言:
Apache Kaika (简称Kafka )最早是由LinkedIn开源出来的分布式消息系统,现在是Apache旗下的-个子项目,并且已经成为开源领域应用最广泛的消息系统之-。Kafka社区也非常活跃,从0.9版本开始,Kafka的标语已经从“一个高吞吐量. 分布式的消息系统”改为“一一个分布式的流平台”。
由于篇幅限制没有所有的,这里就不做全部的展示,分享几个比较重点的,领取完整的电子书,私信我(资料)即可免费领取
目录:
- Kafka入门
- 生产者
- 消费者:高级API和低级API
- 新消费者
- 协调者
- 存储层
- 控制器
- 基于Kafka构建数据流管道
- Kafka流处理
- 高级特性介绍
消费者:高级API和低级API
控制器
相比前面几章而言,Kafka控制 器的工作内容多而杂,它要处理分区的主副本选举( PartitionLeaderselector )、管理分区状态机( PartitionStateMachine ),管理副本状态机( ReplicaStateMachine)、管理多种类型的监听器等。
基于Kafka构建数据流管道
Kafka的核心概念有两个:生产者和消费者。如果有多个Kafka集群,为了实现不同集群的数据同步,可以编写-一个应用程序,其中生产者读取源集群( soure cluster)的消息,消费者写入消息到目标集群。不过,Kaka本身内置了-一个集群同步的工具: MirorMaker。 此外,本章还会分析Uber开源的uReplicator工具,它是MirrorMaker的改进版。另外,除了Katka集群之间的数据同步,Katka集群 和其他存储系统需要同步数据时,Kafka也提供了“Kafka连 接器" ( Kafka Connect )完成数据的导人和导出。
由于篇幅限制没有所有的,这里就不做全部的展示,分享几个比较重点的,领取完整的电子书,私信我(资料)即可免费领取
Kafka流处理
在0.10版本之前,Kafka仅仅作 为消息的存储系统,开发者如果要对Kafka集群中的数据进行流计算,只能借助第三方的流计算引擎来实现。在0 10版本之后,Kafka内置了一个流处理框架的客户端库,开发者可以直接以Kaka为核心构建复杂的流计算任务。
Kaka流处理框架为开发者提供了两种API:低级的Processor API和高级的流式DSL。前者需要开发者自己实现流处理逻辑。后者由框架提供一些通用的流处理器来满足流计算的需求。下面先从一个简单的低级Processor示例程序开始,然后以示例程序涉及的相关类,逐步分析Kafka流处理框架的内部实现。
高级特性介绍
本章只是简单介绍了Kafka新版本的一些高级特性, 并没有深人分析相关的代码实现细节。在本书写作接近尾声时,Kafka的版本 号终于要从0x进人1.00了。新版本不仅支持了事务功能,而且连接器、流处理的功能也越渐丰富和稳定,用户可以放心地在线上运用这些新增功能。如果读者对Katka社区的最新技术改进感兴趣,除r可以上ofluen博客外,官方的KIP文档也是一个不错的资源。
读者福利:
由于篇幅限制没有所有的,这里就不做全部的展示,分享几个比较重点的,领取完整的电子书,关注+转发+私信我(资料)即可免费领取
记得一定要转发哦