腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
黑泽君的专栏
专栏成员
举报
708
文章
1754658
阅读量
103
订阅数
订阅专栏
申请加入专栏
全部文章(708)
其他(310)
java(123)
linux(40)
http(35)
编程算法(34)
windows(34)
eclipse(33)
数据库(32)
存储(27)
大数据(25)
xml(23)
html(22)
面向对象编程(20)
sql(19)
安全(19)
ide(18)
git(17)
云数据库 SQL Server(16)
tomcat(16)
python(13)
jar(13)
servlet(12)
jsp(12)
scala(12)
spark(12)
hadoop(12)
api(11)
spring(11)
开源(10)
jdk(10)
云数据库 Redis(8)
容器(8)
jvm(8)
gui(8)
go(7)
node.js(7)
jquery(7)
ajax(7)
oracle(7)
maven(7)
mapreduce(7)
hive(7)
数据结构(7)
bash(6)
腾讯云测试服务(6)
mongodb(6)
hbase(6)
svn(5)
struts(5)
unix(5)
ubuntu(5)
apache(5)
游戏(5)
分布式(5)
缓存(5)
ftp(5)
ios(4)
单片机(4)
mvc(4)
bash 指令(4)
云数据库 MongoDB(4)
shell(4)
jdbc(4)
asp(4)
tcp/ip(4)
dubbo(4)
udp(4)
kafka(4)
bootstrap(3)
json(3)
android(3)
qt(3)
全文检索(3)
centos(3)
网络安全(3)
hashmap(3)
监督学习(3)
zookeeper(3)
kotlin(3)
单元测试(3)
gcc(3)
nat(3)
虚拟化(3)
NLP 服务(2)
数据挖掘(2)
机器学习(2)
php(2)
javascript(2)
ecmascript(2)
arm(2)
打包(2)
搜索引擎(2)
lucene/solr(2)
nginx(2)
神经网络(2)
深度学习(2)
TDSQL MySQL 版(2)
海外加速(2)
腾讯git代码托管(工蜂)(2)
图像处理(2)
电商(2)
express(2)
yarn(2)
自动化(2)
ssh(2)
mybatis(2)
dns(2)
线性回归(2)
grep(2)
aop(2)
rpc(2)
socket编程(2)
数据分析(2)
数据处理(2)
https(2)
云计算(2)
Elasticsearch Service(2)
测试(2)
模型(2)
数据(2)
算法(2)
负载均衡(1)
c 语言(1)
c++(1)
actionscript(1)
汇编语言(1)
嵌入式(1)
github(1)
analyzer(1)
专用宿主机(1)
访问管理(1)
企业邮箱(1)
大数据处理套件 TBDS(1)
人工智能(1)
网站(1)
数据备份(1)
混合云存储(1)
日志数据(1)
出行(1)
reactnative(1)
压力测试(1)
html5(1)
正则表达式(1)
erp(1)
yum(1)
unity(1)
自动化测试(1)
ntp(1)
小程序(1)
notepad ++(1)
es(1)
数据库管理(1)
cmd(1)
editor(1)
exe(1)
file(1)
input(1)
list(1)
readline(1)
settings(1)
show(1)
二进制(1)
面试(1)
异常(1)
搜索文章
搜索
搜索
关闭
大数据技术之_19_Spark学习_06_Spark 源码解析小结
spark
scala
rpc
java
1、spark 一开始使用 akka 作为网络通信框架,spark 2.X 版本以后完全抛弃 akka,而使用 netty 作为新的网络通信框架。 最主要原因:spark 对 akka 没有维护,需要 akka 更新,spark 的发展受到了 akka 的牵制,akka 版本之间无法通信,即 akka 兼容性问题。 2、RpcEnv:RPC 上下文环境,每个 Rpc 端点运行时依赖的上下文环境称之为 RpcEnv。类似于 SparkContext,默认由 NettyRpcEnv 实现,由 NettyRpcEnvFactory 创建 RpcEnv。 3、RpcEndpoint:RPC 端点,Spark 针对于每个节点(Client/Master/Worker)都称之一个 Rpc 端点且都实现 RpcEndpoint 接口,内部根据不同端点的需求,设计不同的消息和不同的业务处理,如果需要发送(询问)则调用 Dispatcher。代理是 RpcEndpointRef。 4、Dispatcher:消息分发器,针对于 RPC 端点需要发送消息或者从远程 RPC 接收到的消息,分发至对应的指令收件箱/发件箱。 5、Inbox:指令消息收件箱,一个本地端点对应一个收件箱,Dispatcher 在每次向 Inbox 存入消息时,都将对应 EndpointData 加入内部待 Receiver Queue 中。 6、OutBox:指令消息发件箱,一个远程端点对应一个发件箱,当消息放入 Outbox 后,紧接着将消息通过 TransportClient 发送出去。 7、TransportClient:Netty 通信客户端,主要负责将相对应的 OutBox 中的数据发送给远程 TransportServer。 8、TransportServer:Netty 通信服务端,主要用于接收远程 RpcEndpoint 发送过来的消息,并把消息传送给 Dispatcher。
黑泽君
2019-05-14
529
0
RMI与RPC的区别
rpc
java
dubbo
udp
api
一、RMI 远程方法调用 RMI(Remote Method Invocation)远程方法调用。能够让在客户端Java虚拟机上的对象像调用本地对象一样调用服务端java 虚拟机中的对象上的方法。使用
黑泽君
2018-10-11
17.9K
0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档