我一直在思索一个问题,在做自动化测试过程,需要多台机器共同协助工作,我们如何知道哪些机器是空闲的,那些机器是繁忙的。如何知道哪些机器出现故障,需要重新发布任务呢,昨晚我看了一篇分布式编程的方法,深受感触!以下是我用ruby写的一个小程序。来实现一个分布式调用,就是一个客户端调用服务器端的函数,然后客户端向server端报信息
分布式server程序:
require 'drb/drb'
class HelloDRServer
def execute(message)#需要发布的方法
File.open("log.log", "a") do |f|
f.write("#{Time.now}: client: #{message}")
end
end
end
SerObj=HelloDRServer.new
DRb.start_service('druby://localhost:8888',SerObj)
DRb.thread.join
客户端程序
require 'drb'
obj = DRbObject.new(nil, 'druby://localhost:8888')
p obj.execute("testing")
发现ruby真是很神奇,几句话就搞定了
本文介绍了一个使用Ruby实现的简单分布式调用示例。该示例包括一个服务器端程序和一个客户端程序,通过DRb模块实现了客户端向服务器端发送消息,并记录到日志文件的功能。
6463

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



