2009年6月16日火曜日

Rubyで分散オブジェクト

RubyにはdRubyという分散オブジェクトが標準で組み込まれています。今までJavaのRMIやHORB、JavaIDL(CORBA)およびomniORB(CORBA)を使ってきましたが、それらの中でダントツに簡単に分散化できます。サーバは

DRb.start_service(uri, (公開するクラス).new)

とするだけ。コンパイルしてスタブとスケルトンを吐き出す必要もありません。クライアントは

server = DRbObject.new_with_uri(サーバへのuri)
server.method()         #サーバのメソッド呼び出し

のような感じでつなげるだけ。ということでIDLコンパイラやHORBCが不要で超簡単です。

0 件のコメント: