我一直在玩弄 DRb,将其用作跨多个进程进行通信的解决方案。我正在使用标准进程:一个创建服务,将其注册到 druby uri,而在另一个进程上创建引用该 URI 的 DRbObject。到目前为止,一切都很好。假设我杀死了第一个进程。远程对象上的每个后续方法调用都将导致 ECONNRefused 异常。这是公平的。但是有没有办法查看 DRbObject 是否确实在给定的 URI 中注册?我认为通过在每个实例上强制一个 ECONNRefused 来测试它是否存在有点愚蠢。
当然,其他涉及 DRb 以外的资源的解决方案总是受欢迎的,只要它们确实代表一个加分项。