11

我正在使用MailboxProcessor类来保持单独的代理做自己的事情。通常代理可以在同一个进程中相互通信,但我希望代理在不同进程甚至不同机器上时能够相互通信。什么样的机制最适合实现它们之间的通信?有一些标准的解决方案吗?

请注意,我正在使用 Ubuntu 实例来运行代理。

4

1 回答 1

3

我认为您将编写自己的例程来序列化消息,将它们传递到进程边界,然后将它们发送到另一端。这还需要一个 ID 系统的实现,其中每个邮箱都有一个 ID,并且进程可以将消息发送到 ID,而不仅仅是 Mailbox.Send。这并不容易,因为本地邮箱能够访问本地内存,而远程邮箱则不能。

我会看一下像 RPyC (http://rpyc.wikidot.com/) 这样的东西,因为它提供了一个有点像你正在寻找的协议。

基本上答案是“不”,没有真正的好方法来做到这一点。

于 2011-02-01T20:37:33.760 回答