为什么Spark 1.6不使用Akka? [英] Why Spark 1.6 does not use Akka?

查看:194
本文介绍了为什么Spark 1.6不使用Akka?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我阅读 Master 类中,receiveAndReply方法似乎未在使用Akka。 [cf. 这里。]

When I read spark-1.6 source code of the Master class, the receiveAndReply method seems not to be using Akka. [Cf. here.]

为什么不使用Akka?他们用什么代替了Akka?

Why is it not using Akka ? And What did they replace Akka with ?

推荐答案

使Spark独立于Akka的动机在SPARK-5293 ,这是Akka相关问题的保护伞。

The motivation behind making Spark independent from Akka are well described in SPARK-5293 which is an umbrella task for Akka related issues.

引用原始描述:


Spark取决于Akka,因此用户不可能依赖不同的版本,我们过去已收到许多要求,以寻求有关此特定问题的帮助。例如,Spark Streaming可能被用作Akka消息的接收者,但是我们对Akka的依赖性要求上游Akka演员也使用相同版本的Akka。

Spark depends on Akka, [so] it is not possible for users to rely on different versions, and we have received many requests in the past asking for help about this specific issue. For example, Spark Streaming might be used as the receiver of Akka messages - but our dependency on Akka requires the upstream Akka actors to also use the identical version of Akka.

我们对Akka的使用受到限制(主要用于RPC和单线程事件循环),我们可以将其替换为其他RPC实现和Spark中的常见事件循环。

Since our usage of Akka is limited (mainly for RPC and single-threaded event loop), we can replace it with alternative RPC implementations and a common event loop in Spark.

如您所见,主要原因很简单-为用户提供了更大的灵活性来创建自己的应用程序。

As you can see, the main reason is simple - to give users more flexibility in creating their own applications.

还删除了像Akka这样的复杂依赖项,但Spark尚未广泛使用它,这意味着较低的维护成本。

Also removing complex dependency like Akka, which hasn't been used extensively by Spark anyway, which means lower cost of maintenance.

这篇关于为什么Spark 1.6不使用Akka?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆