- 很多Spark用户也使用Akka,但是由于Akka不同版本之间无法互相通信,这就要求用户必须使用跟Spark完全一样的Akka版本,导致用户无法升级Akka。
- Spark的Akka配置是针对Spark自身来调优的,可能跟用户自己代码中的Akka配置冲突。
- Spark用的Akka特性很少,这部分特性很容易自己实现。同时,这部分代码量相比Akka来说少很多,debug比较容易。如果遇到什么bug,也可以自己马上fix,不需要等Akka上游发布新版本。而且,Spark升级Akka本身又因为第一点会强制要求用户升级他们使用的Akka,对于某些用户来说是不现实的。
- akka 是为了通信,不适合大数据量的传输,像hadoop flink hbase 这些后面都用netty 来做节点间数据的传输
- blockmanager已经要用netty传数据了,顺便实现个rpc成本不高,也不引入额外依赖。
https://issues.apache.org/jira/plugins/servlet/mobile#issue/SPARK-5293
https://www.zhihu.com/question/61638635
SPARK-为啥spark用netty替换akka
最新推荐文章于 2024-04-11 16:36:25 发布