
深度了解flink
文章平均质量分 89
拆分flink功能模块,通过源码深度了解flink
橙子qyfftf
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深度了解flink(十一) 心跳机制详解
在Flink的各个服务组件中,ResourceManager、JobMaster、TaskExecutor三者之间存在相互检测的心跳机制:ResourceManager会主动发送心跳请求探测JobMaster、TaskExecutor是否存活;JobMaster也会主动发送心跳请求探测TaskExecutor是否存活,以便进行任务重启或者失败处理。原创 2024-11-12 14:38:54 · 905 阅读 · 0 评论 -
深度了解flink(八) JobManager(2)initializeServices剖析
上篇文章梳理了Flink 集群的模式以及通过源码分析了JobManager的启动流程,这篇文章更加细粒度的分析JobManger启动流程初始的服务。initializeServices剖析.map(value ->() ->LOG.debug(//创建工作目录//创建rpcSystem//创建RpcServicerpcSystem,//根据配置实例化JMX,默认关闭。通过JMX收集Flink的监控信息//创建了一个固定大小的线程池,也可以理解为执行器。原创 2024-10-29 20:32:50 · 1255 阅读 · 0 评论 -
深度了解flink(七) JobManager(1) 组件启动流程分析
JobManager是Flink的核心进程,主要负责Flink集群的启动和初始化,包含多个重要的组件(JboMaster,Dispatcher,WebEndpoint等),本篇文章会基于源码分析JobManagr的启动流程,对其各个组件进行介绍,希望对JobManager有一个更全面的了解。本篇文章分享了Flink任务的集群模式,通过源码的方式分析了JobManger的启动流程,后续会对JobManger相关的服务和组件进行更详细的分析。原创 2024-10-29 15:11:00 · 1321 阅读 · 0 评论 -
深度了解flink 运行时架构
Flink 架构Flink是目前算是实时计算的事实标准,背靠Apache活跃的社区和国内阿里技术团队的支持,社区生态十分丰富,本篇文章主要介绍flink的结构,对flink的各个组件有个更清晰的认识。flink官网对flink的架构有很清晰的介绍,强烈推荐刚接触或者想对flink有深入了解的同学学习flink,我会在官网介绍的基础上补充自己对flink运行时架构的理解。Flink Program:用户代码所在的应用程序JobManager:Master角色 负责集群和作业管理。原创 2024-10-25 21:56:05 · 1448 阅读 · 0 评论 -
深度了解flink Flink 本地运行Standalone模式
然后就等待install结束,最后每个模块都是success,则install成功,就会出现flink的bin包,包含flink的lib和conf等。点击File—> Project Structure—>Project设置Jdk版本(如下图),jdk版本设置1.8或者1.8之后的版本。flink tag出来的分支是release出来的版本,本次使用flink 1.19.1的tag,查看所有tag。如果能访问github,下载github的源码(flink的代码托管网站)6.启动TaskManagr。原创 2024-10-28 16:46:28 · 1621 阅读 · 0 评论 -
深度了解flink rpc机制(三)-组件以及交互
Flink集群内部通信框架的最低层依赖Akka/Pekko,定义了不同类型的消息,并且设计了通用的RPC通信组件,使用了动态代理进行接口管理,利于扩展维护。原创 2024-10-21 22:36:17 · 1057 阅读 · 0 评论 -
深度了解flink rpc机制(二)-动态代理
Flink底层通信大量使用了Java的动态代理,动态代理是一种设计模式,它允许在运行时创建代理对象,并将方法重定向到不同的实际对象,它使我们能在不修改代码的情况下增加或改变某个对象的行为。原创 2024-10-20 10:32:15 · 372 阅读 · 0 评论 -
深度了解flink rpc机制(一)-Akka/Pekko
在RPC中,客户机和服务器位于不同的机器上,客户端通过网络调用在服务器端运行的过程,并将结果发送回客户机。创建两个Actor用于模拟Actor的通信,只是为了演示发送和接受,其实每个Actor都可以发送和接受,只要在同一个ActorSystem里,除了和外部Actor通信也可以和自身通信。当使用tell方式的时候,表示仅仅使用异步的方式与Actor进行通信,无需等待Actor的响应结果,并且也不会阻塞后续代码的运行。在Akka中,创建的Actor都有自己的路径,该路径遵循ActorSystem的层级路径,原创 2024-10-20 10:19:28 · 1069 阅读 · 0 评论