【Flink精讲】Flink组件通信

主要指三个进程中的通讯

  1. CliFrontend
  2. YarnJobClusterEntrypoint
  3. TaskExecutorRunner

Flink内部节点之间的通讯使用Akka,比如JobManager和TaskManager之间。而operator之间的数据传输是利用Netty。

RPC是统称,Akka,Netty是实现

Akka与Actor模型

Actor(演员)模型,每个actor有一个mailbox来收发消息,每个actor都是一个单一的线程。

Actor系统(ActorSystem):相当于部门,系统里有线程池,多个actor系统可以在一台机器上共存。

Flink中的Actor

Flink系统由3个分布式组件组成:JobClient、JobManager和TaskManager。

异步消息、异步响应:Futures :Java JUC

与Actor通讯

Akka两种核心异步通讯方式:tell和ask。

  • tell跟你说一下就完了

  • ask可以获取到响应结果

RPC

RpcGateway

JobManger连接TaskManager里的Server,返回给JobManager一个Gateway

RpcEndpoint

RpcService与RpcServer

RpcService接口:实现:AkkaRpcService

RpcServer,由RpcService启动得到,RpcServer是self gateway(自身的网关:调用自己的方法,接收网关的请求),区别与访问其他节点的gateway

RpcServer接口两个实现

  • AkkaInvocationHandler
  • FencedAkkaInvocationHandler:高可用,Fenced栅栏

RpcEndpoint的start方法调用的是RpcServer的start

通讯流程

相关推荐
java_logo3 分钟前
TDengine Docker 容器化部署指南
大数据·docker·tdengine·docker tdengine·tdengine部署教程·tdengine部署文档·tdengine部署
AI营销资讯站19 分钟前
原圈科技AI营销内容生产体系助力企业降本提效新变革
大数据·人工智能
原神启动121 分钟前
Nginx云计算大数据——安装AND版本升级(普通升级+平滑升级+失败回滚)
大数据·nginx·云计算
qq_124987075322 分钟前
基于spark的新闻文本分类系统(源码+论文+部署+安装)
大数据·分类·数据挖掘·spark
存储国产化前线24 分钟前
国产工业级存储进阶之路:从自主可控主控到可靠可用的全链路突围
大数据·人工智能·物联网
AI营销先锋29 分钟前
原圈科技赋能AI市场舆情分析,推动企业智能化决策变革
大数据·人工智能
老蒋新思维30 分钟前
创客匠人观察:知识IP的下一站——与AI智能体共生的“人机协同”模式
大数据·人工智能·网络协议·tcp/ip·重构·创始人ip·创客匠人
啊吧怪不啊吧1 小时前
SQL之用户管理——权限与用户
大数据·数据库·sql
山沐与山1 小时前
【Flink】Flink开发环境搭建与WordCount实战
大数据·flink
图导物联1 小时前
厂区地图导航系统:基于北斗/GPS+蓝牙 iBeacon 的开发方案,破解 “定位不准、调度混乱、安全薄弱” 三大痛点
大数据·人工智能·物联网