Kafka最初是由LinkedIn公司开发的消息系统,现在已成为Apache的开源项目。早期版本的Kafka主要是作为一个分布式、可分区和具有副本的消息系统,随着版本的不断迭代,在0.10.x版本之后Kafka已成为一个分布式流数据处理平台,特别是KafkaStreams的出现,使得Kafka对流数据处理变得更加简单。
Kafka发展至今已具备很多特性,如分布式、高吞吐量、低延迟、高水平扩展性、高容错性等,也正是由于Kafka具备这些特性,使Kafka在大数据处理、日志收集、实时监控、离线统计分析等应用场景都被广泛使用。
本书内容按照从抽象到具体、从点到线再到面的学习思维模式进行编排,由浅入深、理论与实践相结合地对Kafka进行了讲解和分析。剖析Kafka实现原理时,Kafka核心组件各成一节;讲解Kafka基本操作及应用实践时,从简单操作拓展到高级应用。全书的各章之间没有很强的依赖关系,读者可以从其中任何一章开始阅读。
本书虽适合作为入门书籍,但其内容丰富又不失深度,既深入剖析了Kafka核心原理,又侧重实际操作实战。阅读本书读者不仅可以掌握如何应用Kafka,更重要的是还可以了解Kafka性能优化和Kafka相关功能改造方面的方法和理论。
本书是基于Kafka的0.10.1.1版本编写的。