dRubyは専用のプロトコルを使って、リモートアクセス用のクライアントとサーバを構築しますが、NetworkFacadeを使うことで、HTTPを使ってRubyのオブジェクトのやりとりをすることが出来るようになります。
dRubyを使ったことがある人なら、ほとんど同じように使うことができます。簡単なサンプルが、プロジェクトのページに記載されているので、ぜひ参考にしてみてください。
こちらでも簡単なオブジェクトは試しましたが、まだ出たばかりなので、エラー処理などが正しく行われているかに不安が残ります。
同時に既存のXML/RPCやRESTをオブジェクトにバインドすることもできます。
Wikipediaを呼び出すのは下記の様なコードになります。
#!/usr/bin/env ruby require 'rubygems' require 'network-facade' class Wikipedia < NetworkFacade::REST::Client 'http://wikipedia.simpleapi.net/' mapping :keyword, '/api' end wikipedia = Wikipedia.new wikipedia.keyword(:keyword => 'Ruby on Rails').root.elements.each("*/body") do |e| puts e end
ファイアウォールなどの都合で、HTTPを使って外部のRubyサーバと手軽に通信したいときにどうぞ。