最新要闻
- Model 3还要便宜 分析师看衰特斯拉:不降价达不到目标
- 爱奇艺:《狂飙》热度刷新历史纪录 会员规模有信心继续增长
- 每日简讯:ChatGPT承认:对人文学科 有3个负面影响
- 环球速讯:美女UP主买理想ONE一年血亏10万 欲哭无泪:我也要去维权
- 焦点热议:跨境电商平台公布海外数字化展会首批重点名单 涵盖新能源等多个外贸核心行业
- 热讯:女孩用吹风机吹头发:插座处突然着火
- 播报:RTX 4060售价6999元 七彩虹将星X15 AT游戏本图赏
- 130MB/s读写稳如磐石!希捷酷玩系列蜘蛛侠特别版游戏硬盘2TB评测:RGB超有范儿
- 吃面比吃米更易发胖 西安交大团队证实:三大原因
- 当前聚焦:中国联通空中基站研制成功:无人机留空最长8小时 信号覆盖100平方公里
- 爱玛MVP战神新国标电动两轮车直降千元:1499元 能跑40km
- 【天天报资讯】V社“钓鱼”打击外挂:《Dota 2》一次性封禁4万作弊玩家
- 全球聚焦:百度2022年赚了207亿 李彦宏放大招:多项业务整合文心一言
- 全球看点:孙正雯微博_孙正雯
- 女子连刷11个差评被曝光 当事人要起诉商家:视频流传到全网 严重影响生活
- 肉眼可见!今晚上演金星伴月木星相随 不看亏大了
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
【世界热闻】Flink之间的组件通信
(资料图片)
Flink内部节点之间的通信是用Akka,比如jobmanager和taskmanager之间的通信。而operator之间的数据传输是用netty。一句话总结,组件之间的传递用的akka,数据之间的网络传输用的是netty。
flink通过akka进行的分布式通信的实现,在0.9版本使用。使用akka,所有远程过程调用现在都实现为异步消息。 RPC框架是flink任务运行的基础,flink整个RPC框架都是基于akka实现,并对akka中的actorsystem、actor进行了封装和使用。
RPC,netty,akka三者之间的关系?
RPC是一个统称,全称叫做Remote Procedure Call,远程方法调用。是一个广泛的概念。是akka或者netty具体的某一种实现。
akka与actor模型
akka是一个并发、容错和可伸缩应用的框架。基本所有框架都有这几个优点。每个actor都是一个单一的线程,它不断地从其邮箱中poll(拉取)消息,并且连续不断地处理,可以改变它自身的内部状态,
actor系统
可以理解为一个工作部门,每一个actor是一个员工,整个是一个actor系统。一个actor系统包含了所有存活的actors。多个actor系统可以在一个机器上共存。actor系统能够自动识别消息是发送给本地机器还是远程机器的actor系统。所有actors都是通过继承的方式来组织的。每个新创建的actor为子actor,每个父actor对自己的子actor负责监督。如果子actor出现错误,父actor将会收到通知。
flink中的actors
actor是一个包含状态和行为的容器。flink系统由三个分布式组件构成:jobclient,jobmanager,taskmanager。jobclient从用户处得到flink job,提交给jobmanager。jobmanager策划这个job的执行,首先分配所需的资源,分配的资源主要就是taskmanager上要执行的slot。资源分配之后,jobmanager部署单独的任务到响应的task manager上,一旦收到一个任务,task manager产生一个线程用来执行这个任务。状态的改变(如开始计算或者完成计算)将被发送回jobmanager。基于这些状态的更新,jobmanager将引导这个job的执行直到完成。一旦一个job执行完成,其结果就会被发送回jobclient。
异步VS消息同步
在任何地方,flink使用异步消息和通过futures(用来获取异步的响应)来处理响应。futures有一个超时时间,以防止操作失败。这是为了防止死锁,超市时间可以通过“akka.timeout”来配置。两个actor在通信之前,需要获取一个actorRef,通过这个引用来和另一个actor通信。这个操作的查找也有一个超时时间,防止查询超时,通过"akka.lookup.timeout"。akka可以限制消息的大小,可通过"akka.framesize"配置来更改大小。
使用akka
akka系统的核心是actorsystem和actor,actor不能直接创建,必须先创建actorsystem才能创建actor,另外,我们只能通过actorRef跟actor进行通信。akka有两种核心的异步通信方式:tell和task。tell:仅仅使用异步方式给某个actor发送消息,无需等待actor响应结果,并且也不会阻塞后面代码的运行。ask:当我们需要从actor获取响应结果时,可使用ask方法,ask方法会将返回结果包装到类scala.concurrent.Future中。然后通过异步回调获取返回结果。上面主要介绍了akka中的actorsystem、actor,以及与actor的通信,flink借此构建其底层通信系统。
RPCGateway网关
flink的RPC协议通过RPCgateway来定义,主要定义通信行为,用于远程调用RPCendpoint方法,可以理解为对方的代理。job manager---》gateway(包含了各种行为方法,控制task manager)---》task manager。
RPCEndpoint终端
RpcEndpoint是通信终端,提供RPC服务组件的生命周期管理(start、stop)。每个RPCendpoint对应了一个路径(endpoint和actorsystem共同确定),每个路径对应一个actor,它实现了RpcGateway接口。构造的时候调用rpcService.startServer()启动RpcServer,进入可以接收请求的状态,最后将RpcServer绑定到主线程上真正执行起来。在RpcEndpoint中还定义了一些方法如runAsync(Runnable)、callAsync(callable,time)方法来执行Rpc调用,值得注意的是在flink的设计中,对于同一个endpoint,所有的调用都运行在主线程,因此不会有并发问题,当启动Rpcendpoint进行RPC通信时,它会委托RpcServer进行处理。
RpcService和RpcServer
RpcService和RpcServer是RPCendpoint的成员变量。RpcService是Rpc服务的接口,其作用如下: 根据提供的RPCendpoint来启动和停止RpcServer(actor) 根据提供的地址链接到对方的RpcServer,并返回一个Rpcgateway 延迟\立刻调度runnable、callable在flink中的实现类为AkkaRpcService,是Akka的ActorSystem的封装,基本可以理解为ActorSystem的一个适配器。最终使用动态代理将所有的消息转发到InvocationHandler。RpcServer负责接收响应远端RPC消息请求,是一个自身的代理对象(终端的启动实际上是由自身网关RpcServer来启动的rpcserver.start()方法。)。有两个实现:AkkaInvocationHandler和FencedAkkaInvocationHandler。
AkkaRpcActor
AkkaRpcActor是Akka的具体实现,主要负责处理如下类型消息: 1.本地Rpc消息,调用LocalRpcInvocation 会指派给rpcEndpoint进行处理,如果有响应,则将结果返还给sender。 2.runAsync消息 && callAsync消息 这类消息带有可执行的代码,直接在actor的线程中执行。 3.控制消息controlMessages 用来控制actor行为,start启动,stop停止,停止后收到的消息会丢弃。
RPC交互过程
RPC通信过程分为请求和响应。请求:在RPCservice中调用connect()方法与对端的RPCendpoint(RPCserver)建立连接,connect()方法根据返回的地址返回InvocationHandler(AkkaInvocationHandler或FencedAkkaInvocationHandler)。响应:RPC消息通过RPCendpoint所绑定的actor的actorREF发送的,akkaRPCactor是消息的接收入口,akkaRPCactor在RPCendpoint中构造生成,负责将消息交给不同的方法进行处理。
RPC流程图
【世界热闻】Flink之间的组件通信
Model 3还要便宜 分析师看衰特斯拉:不降价达不到目标
爱奇艺:《狂飙》热度刷新历史纪录 会员规模有信心继续增长
焦点热讯:Shell常用命令与脚本实例
每日热门:【算法训练营day58】LeetCode739. 每日温度 LeetCode496. 下一个更大元素
(三)浅谈人工智能:烽烟四起
【世界播资讯】Spark系列 - (2) Spark核心概念
每日简讯:ChatGPT承认:对人文学科 有3个负面影响
环球速讯:美女UP主买理想ONE一年血亏10万 欲哭无泪:我也要去维权
【算法训练营day57】LeetCode647. 回文子串 LeetCode516. 最长回文子序列
当前最新:006 - 数据类型、来源和清洗
焦点热议:跨境电商平台公布海外数字化展会首批重点名单 涵盖新能源等多个外贸核心行业
热讯:女孩用吹风机吹头发:插座处突然着火
播报:RTX 4060售价6999元 七彩虹将星X15 AT游戏本图赏
130MB/s读写稳如磐石!希捷酷玩系列蜘蛛侠特别版游戏硬盘2TB评测:RGB超有范儿
第七章 程序是在何种环境下运行的
二八轮动策略:基础与改进
Python迭代器是啥?
【世界速看料】学习笔记——Git命令
世界时讯:Vue相关笔记
吃面比吃米更易发胖 西安交大团队证实:三大原因
当前聚焦:中国联通空中基站研制成功:无人机留空最长8小时 信号覆盖100平方公里
爱玛MVP战神新国标电动两轮车直降千元:1499元 能跑40km
【天天报资讯】V社“钓鱼”打击外挂:《Dota 2》一次性封禁4万作弊玩家
全球聚焦:百度2022年赚了207亿 李彦宏放大招:多项业务整合文心一言
世界报道:Vue3从基础到精通
【算法训练营day56】LeetCode583. 两个字符串的删除工作 LeetCode72. 编辑距离
全球看点:孙正雯微博_孙正雯
女子连刷11个差评被曝光 当事人要起诉商家:视频流传到全网 严重影响生活
肉眼可见!今晚上演金星伴月木星相随 不看亏大了
热门看点:一年挣了3700亿元 马斯克被股东联合起诉:工资太高
热议:ROG推出新款XG27AQMR显示器:2K Fast IPS、300Hz刷新率
迅雷重磅升级堪比NAS:远程可看电脑片库 手机、电脑、电视全打通
当前动态:vue08----()
全球讯息:Cloudkit游标分页获取数据
教你编写SQLMap的Tamper脚本过狗
职场IT老手教你3步教你玩转可视化大屏设计,让领导眼前一亮!
三元锂电池剧烈萎缩 比亚迪刀片电池走对了:消费者纷纷买单
精彩看点:研究发现AI在某些方面不如婴儿:很难监测人类行为动机
死磕到底!车顶维权女车主:特斯拉刹车失灵事件过去3年 官方仍未提供数据
世界今日报丨RTX 4070游戏本性能平平:有媒体评测一半放弃了!
环球消息!会员数近1.2亿!爱奇艺2022首次全年盈利:净利13亿 会员限制已妥协
每日热门:【算法训练营day55】LeetCode392. 判断子序列 LeetCode115. 不同的子序列
今日快看!vue+html5实现上传图片
【全球播资讯】Linux命令-文件、磁盘管理
大势前瞻!文旅还是短视频,你弯道超车风口在这了
环球关注:杭州余杭新居民落户当天可拿市民卡,医保、社保同时办理
世界快资讯:网红老师张雪峰吐槽还60万房贷利息57万 道歉:朋友弄错了
有灵魂的米饭:仓浪河东北黑龙江五常大米稻花香5kg 37.9元大促
天天即时看!经典之作退场!开发商Rovio宣布《愤怒的小鸟》将下架安卓平台
当前滚动:广东一车主加完油从车窗撒钱离去引众怒:车主回应已致歉 为何最基本尊重做不到
1个App能扫全品牌共享单车!全能车被哈啰告上法庭判赔六千万元
环球百事通!拍一拍后缀怎么弄
今日热文:浅识面向对象和面向过程
世界短讯!Framework 中使用 Toolkit.Mvvm 的生成器功能
科幻杂志被ChatGPT生成投稿“淹没”:无奈关闭投稿渠道
拿下一百多项年度大奖!《艾尔登法环》累计销量破2000万份
世界最新:头皮发麻!半夜追剧腾讯视频突然跳转恐怖片 客服:需重新下载客户端
当前滚动:博主实测理想L7越野性能 李想:中国路上95%的车 一个项目都过不去
天天热消息:新一代国产本田雅阁内饰曝光:比美版少了多个实体按键
每日聚焦:大数据应用场景下,标签策略如何实现价值最大化?
通讯!98%的程序员,都没有研究过JVM重排序和顺序一致性
环球即时看!查看Linux系统下CPU、内存、硬盘等信息
环球短讯!第121篇: DOM常用类型(Document、Element)
全球实时:CountDownLatch的使用
世界速讯:鹏都农牧:缅甸肉牛暂无法通关,公司正在积极推进复工复产工作
天天看点:10岁小学生玩游戏18天花掉14万 退款申请腾讯无视:家长感慨一定看好支付密码
焦点精选!摩托罗拉Razr 2023外观曝光:超大外屏抢眼
全球微头条丨安卓都16GB内存了 iPhone 15 Pro还在挤牙膏
【时快讯】或6.58万起 疑似比亚迪海鸥售价曝光:最远能跑405km
中国香港影史首部票房破亿华语电影诞生 此前TOP10均为好莱坞
每日快看:【黑科技】GPS北斗卫星授时技术下的NTP网络时间服务器
世界热头条丨每天走路10000步很健康?错 大错特错!
踢翻日系!比亚迪又要对BBA动手了
当前报道:20年来最低点!PC出货量暴跌:Intel等巨头业绩“凉凉” 显卡存储也没人买
SpringCloud+Dubbo3 = 王炸 !
世界微动态丨理想汽车:被4S店PUA、不如看看直营无套路零售中心
网红玩具有危险!2岁幼童误吞28颗磁力珠 医生提醒:必须及时取出
叫板特斯拉 保时捷:单踏板模式制动能量回收效率不高
座位被占 女子爬火车行李架睡觉:千万不要模仿
环球资讯:WiFi万能钥匙联合长安汽车,“一键连接”拓展至车机端
木鱼cms系统审计小结
世界资讯:单调栈
灵魂摆渡的作者真的杀了他的妻子吗?灵魂摆渡的经典台词有哪些?
董明珠回应直播带货争议:不是为了卖产品 是推广技术
当前关注:12万就能上太空!日企将用高空气球开启太空旅游
【天天播资讯】昔日国内共享单车巨头!ofo小黄车被曝无法登录:超1600万人押金没退
“AI飞行员”成功驾驶战斗机 美国顶尖飞行员曾是手下败将
播报:暴雪公布《暗黑破坏神4》实机画面:有《暗黑2》那味了
六一儿童节的优美句子有哪些?关于六一儿童节的作文汇总
移动空调效果如何选择?移动空调哪个牌子好又实惠省电?
迅雷崩溃是怎么回事?迅雷崩溃怎么解决?
家用数码相机怎么选?家用数码相机什么牌子最好?
三星S8000c什么时候上市的?三星s8000c功能介绍
直播预告 | 企业如何轻松完成数据治理?火山引擎 DataLeap 给你一份实战攻略!
分层测试(五):端到端测试
热文:李楠谈网暴 在线教网友“如何避免成为网暴的施暴者”
要闻速递:终于告别“板砖”适配器!联想拯救者Y9000P 2023将支持140W便携快充
499元 雷蛇炼狱蝰蛇V3专业版发布:59克超轻量化设计
融资客最看好个股一览