<cite id="fzn17"></cite>
<var id="fzn17"></var><cite id="fzn17"><video id="fzn17"></video></cite>
<cite id="fzn17"></cite>
<var id="fzn17"></var>
<menuitem id="fzn17"><span id="fzn17"><thead id="fzn17"></thead></span></menuitem>
<cite id="fzn17"><span id="fzn17"><var id="fzn17"></var></span></cite><var id="fzn17"><span id="fzn17"><var id="fzn17"></var></span></var>
<var id="fzn17"></var>
<menuitem id="fzn17"></menuitem>
<cite id="fzn17"><video id="fzn17"></video></cite>
|
|
51CTO旗下网站
|
|
移动端

前言

《深入理解Kafka:核心设计与实践原理》本书主要阐述了Kafka中生产者客户端、消费者客户端、主题与分区、日志存储、原理解析、监控管理、应用扩展及流式计算等内容。本节为前言。

作者:朱忠华来源:电子工业出版社|2019-01-20 13:29

前言

初识Kafka时,笔者接触的还是0.8.1版本,Kafka发展到目前的2.0.0版本,笔者也见证了Kafka的蜕变,比如旧版客户端的淘汰、新版客户端的设计、Kafka控制器的迭代优化、?#25509;?#21327;议的变更、事务功能的引入等。Kafka从昔日的新星逐渐走向成熟,再到今日的王者地位不可撼动,这期间有太多的故事可讲。

刚接触Kafka时,市面上很少有关于Kafka的书籍。在学习Kafka的过程中也经历过很多挫败,比如Scala这门编程语言就让笔者在Kafka的源码大门外却步良久。那时候就在想,如果有一本书能够全方位地解析Kafka该有多好啊。

随着对Kafka的逐步了解,也渐渐地萌生了自己写一本关于Kafka的书的想法,产生这一想法至今已超过两年。在这期间,笔者阴差阳错地先写了一本关于RabbitMQ的书,也就是《RabbitMQ实战指南》,此时已是2017年年末,市面上已经陆续出现了好几本有关Kafka的书,而且此时Kafka的版本也已经升级到1.0.0。

笔者认真看过几乎所有现存的Kafka的书籍,回想这一?#36153;?#20064;和使用Kafka的经历,深感这些都不是自己理想中的书籍,那么不如自己再"操刀"写一本。本书秉?#24515;?#29992;文字表述的就不贴源码、能用图形辅助的就不乏味陈述;既要让新手能够快速入门,也要让老手有所?#26632;瘢?#20174;基础概念入手,再到原理深入,让读者能够由浅入深地理解Kafka。

本书依据Kafka 2.0.0版本编写,书中所?#24515;?#23481;都具备理论基础并全部实践过,书中的内容也是笔者在工作中的认知积累,希望本书能够让读者有所?#26632;瘛?/p>

内容大纲

本书共12章,前后章节都有相应的联系,基本上按照由浅入深、由表及里的层次逐层进行讲解,如果读者?#20113;?#20013;的某些内容已经掌握,可以选择跳过而翻阅后面的内容,?#36824;?#36824;是建议读者按照先后?#25215;?#36827;行阅读。

第1章对Kafka的基础概念进行笼统的介绍,之后讲解如何安装与配置Kafka,以及通过简单的生产消费消息的示例让读者能够快速地入门。

第2章主要是针对生产者客户端的讲解,包括生产者客户端参数、消息的发送、序列化、分区器、拦截器、原理解析等内容。

第3章主要是针对消费者客户端的讲解,包括消费者客户端参数、主题与分区的订阅、反序列化、消息的消费、位移提交、再均衡、拦截器、多线程实现等内容。

第4章主要介绍主题与分区的管理,包括创建主题、修改主题、删除主题、主题端参数配置、优先副本、分区重分配、复制限流,以及对分区数抉择的探讨等内容。

第5章主要讲解日志存储相关的内容,包括文件目录的布局、日志格式的演变、日志清理的细节、底层存储的原理等内容。

第6章主要对Kafka服务端的一些内部核心内容进行详细的阐述,包括协议设计、延时操作、控制器、leader的选举等内容。

第7章主要是对Kafka客户端相关的原理剖析,?#27604;?#20854;中也需要牵涉服务端的内容。这一章包括消费端分区分配策略、消费者协调器和组协调器、__consumer_offsets的剖析、事务的介绍等内容。

第8章主要对可靠性、一致性等核心原理进行陈述,本章内容最为抽象,主要包括失效副本、ISR伸缩、LEO与HW、Leader Epoch的介入、日志同步机制、可靠性分析等内容。

第9章主要是对Kafka相关应用的一些补充,包括一些重要的管理工具,还有Kafka Connect、Kafka Mirror Maker和Kafka Streams等内容。

第10章是与Kafka监控相关的内容,监控作为Kafka生态中的一个必备内容,有着相当重要的地位,通过学习本章的内容可以让读者对整个监控的脉络设计和底层实现有清晰的认知。

第11章是对Kafka做一些功能性的扩展,包括过期时间、延时队列、死信队列、重试队列、消息路由、消息轨迹、消息审计、消息代理等内容,***还通过对消息中间件选型的阐述?#20113;?#35753;读者对整个消息中间件领域有发散性的思考。

第12章主要讲述的是Kafka与Spark集成的一些内容,包括Spark基本概念、Spark Streaming、Structured Streaming,以及它们与Kafka集成的细节等内容。

读者讨论

由于笔者水?#25509;?#38480;,书?#24515;?#20813;有错误之处。在本书出版后的任何时间,若您对本书有任?#25105;晌识?#21487;以通过[email protected]发送?#22987;?#32473;笔者,?#37096;?#20197;到笔者的个人博客http://blog.csdn.net/u013256816中留言,向笔者阐述您的建议和想法。书中的源码会在本书发行之后进行整理,***会公布在笔者的个人微信公众号(朱小厮的博客,二维码在封面上)中。

致谢

首先要感谢我身处的平台,让我有机会深入地接触Kafka。同时要感谢我身边的同事,正因为有了你们的鼓励和帮助,才让我能够迅速地?#27801;ぃ?#26412;书的问世,离不开与你们在工作中一起积累的点点滴滴。

感谢蒋晓峰同学不辞辛苦地为本书校稿,有了你的帮助才会让本书更加完善。

感谢在我博客、微信公众号中提问留言的朋友,感谢消息生态圈的朋友,有了你们的意见和建议才能让本书更加完善。

感谢博文视点的编辑们,本书能够顺利、迅速地出版,多亏了你们的敬业精神和一丝?#36824;?#30340;工作态度。

***还要感谢我的家人,在我占用绝大部分的业余时间进行写作的时候,能够给予我极大的宽容、理解和支持,让我能够全身心地投入写作之中。

朱忠华



?#19981;?#30340;朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书会第9群:808517103

【责任编辑:book TEL:(010)68476606】

回书目      下一节
点赞 0
分享:
大家都在看
猜你?#19981;?/dt>

订阅专栏+更多

16?#26143;?#26494;掌握PPT技巧

16?#26143;?#26494;掌握PPT技巧

GET职场?#26377;?#25216;能
共16章 | 晒书包

289人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

645人订阅学习

WOT2019全球人工智能技术峰会

WOT2019全球人工智能技术峰会

通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
共50章 | WOT峰会

0人订阅学习

读 书 +更多

Eclipse从入门到精通(第2版)

本书为《Eclipse从入门到精通》一书的全新改版。本书以最新的Eclipse 3.2作为写作版本。全书分为5篇:起步篇介绍了Eclipse及相关插件的安装...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客

澳洲幸运5官方
<cite id="fzn17"></cite>
<var id="fzn17"></var><cite id="fzn17"><video id="fzn17"></video></cite>
<cite id="fzn17"></cite>
<var id="fzn17"></var>
<menuitem id="fzn17"><span id="fzn17"><thead id="fzn17"></thead></span></menuitem>
<cite id="fzn17"><span id="fzn17"><var id="fzn17"></var></span></cite><var id="fzn17"><span id="fzn17"><var id="fzn17"></var></span></var>
<var id="fzn17"></var>
<menuitem id="fzn17"></menuitem>
<cite id="fzn17"><video id="fzn17"></video></cite>
<cite id="fzn17"></cite>
<var id="fzn17"></var><cite id="fzn17"><video id="fzn17"></video></cite>
<cite id="fzn17"></cite>
<var id="fzn17"></var>
<menuitem id="fzn17"><span id="fzn17"><thead id="fzn17"></thead></span></menuitem>
<cite id="fzn17"><span id="fzn17"><var id="fzn17"></var></span></cite><var id="fzn17"><span id="fzn17"><var id="fzn17"></var></span></var>
<var id="fzn17"></var>
<menuitem id="fzn17"></menuitem>
<cite id="fzn17"><video id="fzn17"></video></cite>
天天电玩官网 5月7号彩票开奖结果 诈金花什么时候开牌 pc蛋蛋赚q币 山东时时个位走势图 腾讯分分彩都是统一开奖的吗 河北时时网 安徽时时走势图表 加拿大pc走势图500期 欧足联排名表