scala - 如何在非对称系统中将对象发送到远程 akka actor

标签 scala akka erlang-otp

在 Joe Armstrong 的 Programming Erlang 的第 16.1 节中,作者描述了一种使用 Erlang 的 OTP 框架进行热代码交换的方法。我希望能够用 Akka 做到这一点。

给定一个不对称的 Akka 系统,其中 Comp A 和 Comp B 已经建立了远程通信。 A 想将 Int => Int 类型的函数 f 发送给 comp B 进行处理。然而,f 的定义不存在于 Comp B 的类路径中。有没有办法在不提前传输 A 的 jar 文件并添加自定义引导加载程序(即 OSGI)的情况下使这项工作正常进行?

最佳答案

我认为这行不通。如果接收 JVM 没有表示要发送的函数的匿名类定义,那么您将以 ClassNotFoundException 或其他类似内容结束。我以前试过这个但没有成功。它非常类似于 Java 中的 RMI 类型情况,其中系统的双方都必须具有适当的类定义才能正确通信。我猜这就是处理 JVM(和对象序列化)时野兽的本性。

关于scala - 如何在非对称系统中将对象发送到远程 akka actor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16236742/

相关文章:

elixir - Elixir OTP Supervisor 只能是 "use Supervisor"还是必须是 "use Genserver"?

erlang - 在 erlang 中采用 gen_server 架构有困难

Scala 高级类型和协变

scala - Akka 中的 `self` 是什么?

Java Play2-Akka 工作

scala - Akka中Actorref.tell和inbox.send的区别

erlang - 主管启动后启动动态 simple_one_for_one worker

scala - 如何使用 SBT 使用 Scala 2.11.1 编译 Apache Spark?

scala - 确定 List 是否包含重复项的最简单方法?

VIM 和 Scala -- 缩进问题?