Flink在大数据实时计算领域炙手可热,尚硅谷发布过Scala和Java两版Flink视频教程,深入讲解了Flink流计算思想和各种高阶实战应用。本套教程另辟蹊径,针对Flink 1.12.0版本的核心模块进行源码级讲解,从任务提交流程、通讯过程、Task调度、内存模型四大方面入手,庖丁解牛逐行分析源码,手术刀级别剖析Flink内核架构! 一、任务提交流程模块 从任务提交脚本入手,探本溯源,找到程序执行入口,继而解析输入参数、选择创建客户端类型、获取有效配置、调用用户代码的main方法、调用执行环境的excute方法,直至最后进入任务提交流程,详细分析了Flink各组件启动顺序、资源申请流程、资源注册以及分配流程。分析上千行源码,层层追踪,并给出源码关键注释。 二、通讯过程模块 从Akka与Actor模型入手,以点带面,一步步引出Flink的整体组件通信全景。对Flink中RPC框架涉及的主要类RpcGateway、RpcEndpoint、RpcService、RpcServer、AkkaRpcActor进行仔细拆解,之后通过代码的跳转详细分析了RPC的交互过程。 三、Task调度模块 详细讲解Flink四层执行图StreamGraph、JobGraph、ExecutionGraph、物理执行图,分别如何生成转换,均配详尽源码讲解,并深入讲解了Flink的Task调度,分别从源码层面讲解了几个调度的重要组件,调度器、调度策略和调度模式。 四、内存模型模块 详细讲解Flink自主的内存管理模型,如何有效避免了JVM内存管理的不足之处,分别讲解了JobManager内存模型、TaskManager内存模型、源码分析内存分配过程。并讲解了内存数据结构、内存管理器和网络传输中的内存管理等内容。 本教程基于Flink源码进行讲解,分析了数千行代码,通过层层源码调用带你深入Flink核心部分,不再浮于表面,拒绝浅尝辄止,鞭辟入里,入木三分。让你对Flink的认识,不再是“只在此山中,云深不知处”,帮你梳理源码阅读技巧,打通掌握Flink的任督二脉!
视频目录 01.尚硅谷_Flink内核解析_课程简介02.尚硅谷_Flink内核解析_提交流程-程序入口03.尚硅谷_Flink内核解析_提交流程-参数解析04.尚硅谷_Flink内核解析_提交流程-选择哪种命令行客户端05.尚硅谷_Flink内核解析_提交流程-封装有效配置和程序06.尚硅谷_Flink内核解析_提交流程-执行用户代码07.尚硅谷_Flink内核解析_提交流程-启动AM08.尚硅谷_Flink内核解析_提交流程-集群启动-创建ResourceManager09.尚硅谷_Flink内核解析_提交流程-集群启动-创建Dispatcher10.尚硅谷_Flink内核解析_提交流程-集群启动-Dispatcher启动JobMaster11.尚硅谷_Flink内核解析_提交流程-集群启动-RM初始化和启动SlotManager12.尚硅谷_Flink内核解析_提交流程-集群启动-SlotPool向RM申请资源13.尚硅谷_Flink内核解析_提交流程-集群启动-启动TaskManager14.尚硅谷_Flink内核解析_提交流程-集群启动-向ResourceManager注册slot15.尚硅谷_Flink内核解析_提交流程-集群启动-SlotManager分配slot16.尚硅谷_Flink内核解析_提交流程-集群启动-向JobManager提供slot17.尚硅谷_Flink内核解析_提交流程-整体流程图18.尚硅谷_Flink内核解析_课程回顾19.尚硅谷_Flink内核解析_组件通信-Actor模型&Actor系统简介20.尚硅谷_Flink内核解析_组件通信-Flink中的Actor&异步消息21.尚硅谷_Flink内核解析_组件通信-Akka的使用简介22.尚硅谷_Flink内核解析_组件通信-与Actor通信23.尚硅谷_Flink内核解析_组件通信-RPC-RpcGateway介绍24.尚硅谷_Flink内核解析_组件通信-RPC-RpcEndPoint介绍25.尚硅谷_Flink内核解析_组件通信-RPC-RpcService&RpcServer26.尚硅谷_Flink内核解析_组件通信-RPC-AkkaRpcActor27.尚硅谷_Flink内核解析_组件通信-RPC交互-请求发送28.尚硅谷_Flink内核解析_组件通信-RPC交互-请求响应29.尚硅谷_Flink内核解析_组件通信-RPC通信过程图30.尚硅谷_Flink内核解析_任务调度-Graph的相关概念31.尚硅谷_Flink内核解析_任务调度-StreamGraph在Client生成32.尚硅谷_Flink内核解析_任务调度-JobGraph在Client生成33.尚硅谷_Flink内核解析_任务调度-ExecutionGraph的生成位置34.尚硅谷_Flink内核解析_任务调度-ExecutionGraph的生成35.尚硅谷_Flink内核解析_任务调度-Task的调度36.尚硅谷_Flink内核解析_任务调度-Task的执行37.尚硅谷_Flink内核解析_任务调度-调度的相关概念38.尚硅谷_Flink内核解析_任务调度-整体流程梳理39.尚硅谷_Flink内核解析_任务调度-整体流程图40.尚硅谷_Flink内核解析_内存管理-JobManager内存模型41.尚硅谷_Flink内核解析_内存管理-TaskManager内存模型(重点)42.尚硅谷_Flink内核解析_内存管理-内存分配43.尚硅谷_Flink内核解析_内存管理-内存数据结构44.尚硅谷_Flink内核解析_内存管理-内存管理器45.尚硅谷_Flink内核解析_内存管理-网络传输中的内存管理