我正在用DRb编写一个简单的分布式系统。
我有所有的对等点,只有一台服务器来做引导。在该服务器中,我有一些方法,如"suggest_peer“、"start_service”和"stop_service“。
当一个对等体连接到服务器时,他能够调用所有这三个方法。我想让他只能打第一个电话。
此外,我有一个初始化服务器的文件,并且有一个小的cmd行,所以我可以启动服务,调试,日志和所有这些。我希望cmd行能够调用第二个和第三个方法,以及第一个方法。
我该怎么做呢?如何防止对等方停止服务?
如果我将服务方法设置为private,我就不能从cmd行调用它们。
发布于 2011-06-23 05:48:26
这就是我得到的。
Thread.current['DRb']['client'].peeraddr
这将返回一个包含4个项目的小数组。第一个是协议,第二个是端口,第三个是主机(名称),第四个是地址(如果没有名称,与主机相同)。
感谢来自http://www.ruby-forum.com/topic/1962357的Brian Candler
https://stackoverflow.com/questions/6401982
复制相似问题