广告已过期!
详情 评论 声明
商品详情

资源名称:Kafka并不难学!入门、进阶、商业实战


内容简介:

本书基于Kafka 0.10.2.0以上版本,采用“理论 实践”的形式编写。全书共68个实例。

全书共分为4篇:

第1篇,介绍了消息队列和Kafka、安装与配置Kafka环境;

第2篇,介绍了Kafka的基础操作、生产者和消费者、存储及管理数据;

第3篇,介绍了更高级的Kafka知识及应用,包括安全机制、连接器、流处理、监控与测试;

第4篇,是对前面知识的综合及实际应用,包括ELK套件整合实战、Spark实时计算引擎整合实战、Kafka Eagle监控系统设计与实现实战。

本书的每章都配有同步教学视频。视频和图书具有相同的结构,能帮助读者快速而全面地了解每章的内容。

本书还免费提供所有案例的源代码。这些代码不仅能方便读者学习,也能为以后的工作提供便利。


资源目录:

——第1篇  准备

第1章  了解消息队列和Kafka /2

1.1  本章教学视频说明 /2

1.2  消息队列 /2

∟1.2.1  什么是消息队列 /3

∟1.2.2  消息队列主要有哪些作用 /3

1.3  为什么需要Kafka /6

1.4  Kafka的基本概念 /7

∟1.4.1  代理、生产者、消费者、消费者组 /7

∟1.4.2  主题、分区、副本、记录 /8

1.5  了解Kafka的工作机制——生产消息 /消费消息 /9

1.6  Kafka的使用范围 /10

∟1.6.1  Kafka的设计初衷 /10

∟1.6.2  Kafka的特性 /11

∟1.6.3  Kafka适用于哪些场景 /13

1.7  小结 /14

-

第2章  安装及配置Kafka /15

2.1  本章教学视频说明 /15

2.2  安装与配置基础环境 /16

∟2.2.1  安装并配置Linux操作系统 /16

∟2.2.2  实例1:安装与配置Java运行环境 /18

∟2.2.3  实例2:配置SSH免密码登录 /21

∟2.2.4  实例3:安装与配置Zookeeper /23

2.3  实例4:部署Kafka /27

∟2.3.1  单机模式部署 /27

∟2.3.2  分布式模式部署 /29

2.4  实例5:安装与配置Kafka监控工具 /32

∟2.4.1  获取并编译Kafka Eagle源代码 /32

∟2.4.2  安装与配置Kafka Eagle /33

2.5  实例6:编译Kafka源代码 /37

∟2.5.1  安装与配置Scala运行环境 /38

∟2.5.2  安装与配置Gradle /39

∟2.5.3  了解Kafka源代码的编译过程 /40

2.6  实例7:将Kafka源代码导入编辑器 /42

∟2.6.1  导入IntelliJ IDEA编辑器 /42

∟2.6.2  导入Eclipse编辑器 /44

2.7  了解元数据的存储分布 /46

2.8  了解控制器的选举流程 /48

∟2.8.1  了解控制器的启动顺序 /48

∟2.8.2  了解主题分区Leader节点的选举过程 /52

∟2.8.3  了解注册分区和副本状态机 /59

∟2.8.4  了解分区自动均衡和分区重新分配 /61

2.9  小结 /66

——第2篇  入门

第3章  Kafka的基本操作 /68

3.1  本章教学视频说明 /68

3.2  操作Zookeeper集群 /68

∟3.2.1  Zookeeper的作用及背景 /69

∟3.2.2  实例8:单机模式启动Zookeeper系统 /70

∟3.2.3  实例9:单机模式关闭Zookeeper系统 /72

∟3.2.4  实例10:分布式模式启动Zookeeper集群 /74

3.2.5  实例11:分布式模式关闭Zookeeper集群 /77

3.3  操作Kafka集群 /77

∟3.3.1  实例12:单机模式启动Kafka系统 /78

∟3.3.2  实例13:单机模式关闭Kafka系统 /79

∟3.3.3  实例14:分布式模式启动Kafka集群 /81

∟3.3.4  实例15:分布式模式关闭Kafka集群 /84

3.4  管理主题 /85

∟3.4.1  什么是主题 /86

∟3.4.2  实例16:创建主题 /87

∟3.4.3  实例17:查看主题 /88

∟3.4.4  实例18:修改主题 /92

∟3.4.5  实例19:删除主题 /94

3.5  管理分区与副本 /95

∟3.5.1  分区和副本的背景及作用 /95

∟3.5.2  实例20:修改分区 /96

∟3.5.3  实例21:修改副本数 /97

3.6  小结 /99

第4章  将消息数据写入Kafka系统——生产 /100

4.1  本章教学视频说明 /100

4.2  了解Kafka生产者 /101

4.3  使用脚本操作生产者 /101

∟4.3.1  实例22:通过监控工具查看消息 /102

∟4.3.2  实例23:启动消费者程序,并查看消息 /103

4.4  发送消息到Kafka主题 /104

∟4.4.1  了解异步模式 /104

∟4.4.2  实例24:生产者用异步模式发送消息 /105

∟4.4.3  了解同步模式 /105

∟4.4.4  实例25:生产者用同步模式发送消息 /106

∟4.4.5  多线程发送消息 /107

∟4.4.6  实例26:生产者用单线程发送消息 /107

∟4.4.7  实例27:生产者用多线程发送消息 /110

4.5  配置生产者的属性 /112

4.6  保存对象的各个属性——序列化 /115

∟4.6.1  实例28:序列化一个对象 /115

∟4.6.2  实例29:在生产者应用程序中实现序列化 /117

4.7  自定义主题分区 /122

∟4.7.1  实例30:编写自定义主题分区的算法 /122

∟4.7.2  实例31:演示自定义分区类的使用 /123

4.8  小结 /125

-

第5章  从Kafka系统中读取消息数据——消费 /126

5.1  本章教学视频说明 /126

5.2  了解Kafka消费者 /126

∟5.2.1  为什么需要消费者组 /126

∟5.2.1  消费者和消费者组的区别 /127

∟5.2.2  消费者和分区的对应关系 /127

5.3  使用Kafka系统的脚本操作消费者 /130

∟5.3.1  认识消费者新接口 /130

∟5.3.2  实例32:用新接口启动消费者程序,并查看消费者信息 /131

∟5.3.3  实例33:用旧接口启动消费者程序,并查看消费者元数据的存储结构 /134

5.4  消费Kafka集群中的主题消息 /136

∟5.4.1  主题如何自动获取分区和手动分配分区 /137

∟5.4.2  实例34:主题自动 /手动获取分区 /137

∟5.4.3  实例35:反序列化主题消息 /140

∟5.4.4  如何提交消息的偏移量 /145

∟5.4.5  实例36:使用多线程消费多个分区的主题 /146

5.5  配置消费者的属性 /150

5.6  小结 /151

-

第6章  存储及管理数据 /152

6.1  本章教学视频说明 /152

6.2  分区存储数据 /152

∟6.2.1  熟悉分区存储 /153

∟6.2.2  了解消息的格式 /154

6.3  清理过期数据的两种方法 /155

6.4  网络模型和通信流程 /156

∟6.4.1  基本数据类型 /156

∟6.4.2  通信模型 /157

∟6.4.3  通信过程 /157

6.6  小结 /159

-

——第3篇  进阶

第7章  Kafka安全机制 /162

7.1  本章教学视频说明 /162

7.2  了解Kafka的安全机制 /162

∟7.2.1  身份验证 /163

∟7.2.2  权限控制 /163

7.3  使用SSL协议进行加密和身份验证 /164

∟7.3.1  了解SSL协议 /164

∟7.3.2  实例37:创建SSL密钥库,并查看密钥库文件 /165

∟7.3.3  实例38:创建私有证书 /167

∟7.3.4  实例39:导出证书,使用CA对证书进行签名 /170

∟7.3.5  实例40:在服务端配置SSL协议,并创建主题 /173

∟7.3.6  实例41:在客户端配置SSL协议,并读 /写数据 /174

7.4  使用SASL协议进行认证 /176

∟7.4.1  给客户端配置“Java认证和授权服务”(JAAS) /176

∟7.4.2  给服务端配置SASL /178

∟7.4.3  实例42:开启SASL /Kerberos认证协议 /178

∟7.4.4  实例43:开启SASL /PLAIN认证协议 /181

∟7.4.5  实例44:开启SASL /SCRAM认证协议 /184

7.5  权限控制 /187

∟7.5.1  权限控制的基础命令 /187

∟7.5.2  配置ACL(访问控制列表) /188

∟7.5.3  实例45:启动集群 /189

∟7.5.4  实例46:查看授权、添加授权、删除授权 /190

7.6  小结 /195

-

第8章  用Kafka连接器建立数据管道 /196

8.1  本章教学视频说明 /196

8.2  认识Kafka连接器 /196

∟8.2.1  了解连接器的使用场景 /197

∟8.2.2  特性及优势 /198

∟8.3  操作Kafka连接器 /199

8.3.1  配置Kafka连接器的属性 /199

∟8.3.2  认识应用接口——REST API /202

∟8.3.3  实例47:单机模式下,将数据导入Kafka主题中 /203

∟8.3.4  实例48:单机模式下,将Kafka主题中的数据导出 /205

∟8.3.5  实例49:分布式模式下,将数据导入Kafka主题 /206

8.4  实例50:开发一个简易的Kafka连接器插件 /210

∟8.4.1  编写Source连接器 /211

∟8.4.2  编写Sink连接器 /217

∟8.4.3  打包与部署 /220

8.5  小结 /225

-

第9章  Kafka流处理 /226

9.1  本章教学视频说明 /226

9.2  初识Kafka流处理 /227

∟9.2.1  什么是流处理 /227

∟9.2.2  什么是流式计算 /227

∟9.2.3  为何要使用流处理 /228

9.3  了解流处理的架构 /229

∟9.3.1  流分区与任务 /230

∟9.3.2  线程模型 /232

∟9.3.3  本地状态存储 /234

∟9.3.4  容错性(Failover) /235

9.4  操作KStream和KTable /235

∟9.4.1  流处理的核心概念 /236

∟9.4.2  窗口操作 /237

∟9.4.3  连接操作 /241

∟9.4.4  转换操作 /246

∟9.4.5  聚合操作 /247

9.5  实例51:利用流处理开发一个单词统计程序 /248

∟9.5.1  创建Kafka流主题 /248

∟9.5.2  统计流主题中单词出现的频率 /249

∟9.5.3  预览操作结果 /250

9.6  实例52:利用Kafka流开发一个SQL引擎 /251

∟9.6.1  构建生产流数据源 /251

∟9.6.2  构建Kafka流处理 /253

∟9.6.3  构建数据结构和执行SQL逻辑 /254

∟9.6.4  观察操作结果 /255

9.7  小结 /256

-

第10章  监控与测试 /257

10.1  本章教学视频说明 /257

10.2  Kafka的监控工具——Kafka Eagle系统 /258

∟10.2.1  实例53:管理主题 /258

∟10.2.2  实例54:查看消费者组信息 /259

∟10.2.3  实例55:查看Kafka与Zookeeper集群的状态和性能 /263

10.3  测试生产者性能 /264

∟10.3.1  了解测试环境 /264

∟10.3.2  认识测试工具 /265

∟10.3.3  实例56:利用工具测试生产者性能 /266

10.4  测试消费者性能 /275

∟10.4.1  了解测试环境 /275

∟10.4.2  认识测试工具 /276

∟10.4.3  实例57:利用脚本测试消费者的性能 /276

10.4  小结 /280

-

——第4篇  商业实战

第11章  Kafka与ELK套件的整合 /282

11.1  本章教学视频说明 /282

11.2  安装与配置ELK /283

∟11.2.1  安装与配置LogStash /283

∟11.2.2  实例58:LogStash的标准输入与输出 /285

∟11.2.3  安装与配置ElasticSearch /287

∟11.2.4  实例59:使用ElasticSearch集群的HTTP接口创建索引 /292

∟11.2.5  实例60:使用ElasticSearch集群的HTTP接口查看索引 /293

∟11.2.6  实例61:使用ElasticSearch集群的HTTP接口添加数据 /294

∟11.2.7  安装与配置Kibana /296

∟11.2.8  实例62:启动并验证Kibana系统 /298

11.3  实例63:实现一个游戏日志实时分析系统 /299

∟11.3.1  了解系统要实现的功能 /300

∟11.3.2  了解平台体系架构 /300

∟11.3.3  采集数据 /302

∟11.3.4  分流数据 /304

∟11.3.5  实现数据可视化 /306

11.4  小结 /308

-

第12章  Kafka与Spark实时计算引擎的整合 /309

12.1  本章教学视频说明 /309

12.2  介绍Spark背景 /310

∟12.2.1  Spark SQL——Spark处理结构化数据的模块 /310

∟12.2.2  Spark Streaming——Spark核心应用接口的一种扩展 /311

∟12.2.3  MLlib——Spark的一个机器学习类库 /311

∟12.2.4  GraphX——Spark的一个图计算框架 /311

12.3  准备Spark环境 /311

∟12.3.1  下载Spark基础安装包 /311

∟12.3.2  安装与配置Spark集群 /312

12.4  操作Spark /315

∟12.4.1  实例64:使用Spark Shell统计单词出现的频率 /315

∟12.4.2  实例65:使用Spark SQL对单词权重进行降序输出 /317

∟12.4.3  实例66:使用Spark Submit统计单词出现的频率 /319

12.5  实例67:对游戏明细数据做实时统计 /322

∟12.5.1  了解项目背景和价值 /323

∟12.5.2  设计项目实现架构 /323

∟12.5.3  编码步骤一  实现数据采集 /325

∟12.5.4  编码步骤二  实现流计算 /327

∟12.5.5  编码步骤三  打包应用程序 /330

∟12.5.6  编码步骤四  创建表结构 /332

∟12.5.7  编码步骤五  执行应用程序 /332

∟12.5.8  编码步骤六  预览结果 /333

12.6  小结 /333

-

第13章  实例68:从零开始设计一个Kafka监控系统——Kafka Eagle /334

13.1  本章教学视频说明 /334

13.2  了解Kafka Eagle监控系统 /335

∟13.2.1  设计的背景 /335

∟13.2.2  应用场景 /336

13.3  从结构上了解Kafka Eagle /337

∟13.3.1  了解Kafka Eagle的整体架构和代码结构 /337

∟13.3.2  设计Kafka Eagle的7大功能模块 /339

13.4  实现Kafka Eagle的功能模块 /347

∟13.4.1  编码步骤一  实现数据面板 /347

∟13.4.2  编码步骤二  实现主题管理 /348

∟13.4.3  编码步骤三  实现消费者实例详情 /350

∟13.4.4  编码步骤四  实现集群监控 /350

∟13.4.5  编码步骤五  实现性能监控 /351

∟13.4.6  编码步骤六  实现告警功能 /351

∟13.4.7  编码步骤七  实现系统功能 /352

13.5  安装及使用Kafka Eagle监控系统 /353

∟13.5.1  准备环境 /353

∟13.5.2  快速部署 /354

∟13.5.3  了解Kafka Eagle的基础命令 /358

13.6  小结 /358


资源截图:

1.png

声明

1、链接失效请联系客服人员。
2、资源均来源于网友分享及网络公开发表文件,所有资料仅供学习交流。
3、如侵犯您的权益,请联系客服人员,我们将会在第一时间进行处理。

评论区

表情

共0条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~
相关推荐