Ringが繋がらない。

DRb.__drburi – 8時40分が超えられない – subtech

ああやっと解った。Ring の仕組みでは UDP で受け取ったらそのメッセージの DRbObject を実行する。んで DRbObject の uri は broadcast 投げてきたマシンのホスト名な訳で、その名前解決ができないとダメと。ナルホドナァー。

別ネットワークのサーバにRingServerを立てて、開発用クライアントからつなぎにいこうとしたらまんまとこの症状にハマりました。UDPは届いてるけど返ってこない。

ホスト名 – I like Ruby too.

ホスト名からアドレスが引けずにはまることが昔っから多いので、ドット表記のアドレスにしてあげたら幸せな人が多い気がする。

そして、こちらで対応について考えられているのですが、サーバのネットワークとクライアントのネットワークの間でNAPTされてるのでそもそもサーバ側から返事が出来ないってことが判明(なんてこった)。
結局、開発時はってことでURI指定で直繋ぎにしました。今回は残念だけど、過程でRingServerのソース読んだりして構造を理解できた気がするのでよしとしたい。

dRubyによる分散・Webプログラミング dRubyによる分散・Webプログラミング
オーム社(2005-07)
オーム社
新品価格:¥ 3,360
ASIN:4274066096

この辺の話は201ページにあります。

コメント

  1. komagata より:

    直指定くやしいのう、くやしいのう

  2. yoshuki より:

    くやしいのう

タイトルとURLをコピーしました