3

在 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)添加它的情况下完成这项工作?

4

1 回答 1

0

我认为这行不通。如果接收 JVM 没有代表要发送的函数的匿名类定义,那么您最终会得到 aClassNotFoundException或其他类似的东西。我以前试过这个,但没有成功。这与 Java 中的 RMI 类型情况非常相似,在这种情况下,系统的双方都必须有适当的类定义才能正确通信。我猜这就是处理 JVM(和对象序列化)时野兽的本性。

于 2013-04-26T12:49:39.150 回答