2006-10-28 postscript
■ dRubyのURIのオプション

dRubyではURIは一つのオブジェクトに関連づけられる。そのオブジェクトはfrontオブジェクトと呼ばれてそのサービスの入り口となる。
クライアントは参照オブジェクト(DRbObject)を通じてリモートのオブジェクトにメッセージを送るのだけど、DRbObjectを手に入れる方法は二つある。一つはURIからnew_with_uriを使って生成する方法で、もう一つは誰かに教えてもらう方法だ。後者はリモートオブジェクトのメソッド呼び出しの戻り値だったり、ファイル渡しだったり、自分のサービスへのメソッド呼び出しの引数だったり、まあ、二次的なもの。前者は自分で(どうにかして)知ったURI文字列を元にnew_with_uriで生成するもので、
dRubyのシステムへ参加するときの最初の一歩として一般的な方法。
URIから参照を作ろうとすると、サービスの入り口のオブジェクトしか参照できないことになるんだけど、数年前に追加されたオプションを使うともうちょっと先のオブジェクトを参照できる。
druby://localhost:12345?option
「?」の後の文字列はURIのオプション引数(?)となり、frontオブジェクトにこの文字列を問い合わせた結果のオブジェクトを参照する。問い合わせはメソッドに?以後の文字列を与えて行う。RWikiのfrontオブジェクトのメソッドはページ名からページオブジェクトを求めるので、"druby://localhost:8470?top"というURIはRWikiのtopページオブジェクトを参照してくれる。
サーバを再起動してもいつも同じ意味のオブジェクトを[]メソッドが関連づけてくれるなら、このようなURIは不揮発なURIと言えるんだと思うデス。
- dRuby で 1プロセスで複数サービスの提供
- [rwiki-devel:134] Pageに対するDRbObjectの永続性
コメントを書く

![機動戦士ガンダム II 哀・戦士編 / 特別版 【劇場版】 [DVD] 機動戦士ガンダム II 哀・戦士編 / 特別版 【劇場版】 [DVD]](http://ecx.images-amazon.com/images/I/51ET3552ATL._SL160_.jpg)
![機動戦士ガンダム III めぐりあい宇宙編 / 特別版 【劇場版】 [DVD] 機動戦士ガンダム III めぐりあい宇宙編 / 特別版 【劇場版】 [DVD]](http://ecx.images-amazon.com/images/I/51X8N8P9C7L._SL160_.jpg)
![NHKスペシャル地球大進化 46億年・人類への旅 第1集 生命の星 大衝突からの始まり [DVD] NHKスペシャル地球大進化 46億年・人類への旅 第1集 生命の星 大衝突からの始まり [DVD]](http://ecx.images-amazon.com/images/I/213AM380Q2L._SL160_.jpg)
![フューチャーイズワイルド 500万年後 氷の世界 [DVD] フューチャーイズワイルド 500万年後 氷の世界 [DVD]](http://ecx.images-amazon.com/images/I/51NC0ETRBEL._SL160_.jpg)










