分布式开发工具:Distribunaut与Politics深度解析
1. Distribunaut的使用与服务借用
在分布式开发中,为每个Ruby VM设置独特的应用程序名称至关重要,这样我们就能轻松找到所需的服务。当我们掌握了所需服务的URL后,便可调用查找方法来定位这些服务。获取服务后,我们可以创建用户类的新实例,并打印应用服务器名称方法的返回值。例如,可能会看到如下输出:
user_server_1
user_server_2
借助查找方法,我们可以自信地进行编码,因为我们总能获取到所需服务的特定实例,而且无需处理IP地址、端口等繁琐信息。
Distribunaut在从RingServer获取服务时,默认采用读取操作,这意味着其他进程也能同时访问该服务。不过,有时我们可能需要独占某个服务,完成一些操作后再将其归还,供其他进程使用。Distribunaut为此提供了服务借用的概念。
以下是一个简单的示例,展示如何借用 HelloWorld 服务:
require 'rubygems'
require 'distribunaut'
configatron.distribunaut.app_name = :hello_world_app
class HelloWorld
include Distribunaut::Distributable
def say_hi
"Hello, World!"
end
end
DRb.thread
超级会员免费看
订阅专栏 解锁全文
862

被折叠的 条评论
为什么被折叠?



