2011-06-19 11 views
1

私はDRbで単純な分散システムを作成しています。DRbメソッドへのアクセス

私はすべてのピアとブートストラップを行う1台のサーバーを持っています。そのサーバーでは、 "suggest_peer"、 "start_service"、 "stop_service"のようないくつかのメソッドがあります。

ピアがサーバに接続するとき、彼は3つの方法すべてを呼び出すことができます。私は彼が最初のものだけを呼び出すことができるようにしたい。

また、サーバーを初期化するファイルがあり、コマンドラインが少しあり、サービス、デバッグ、ログなどを開始できます。私は、その最初のものだけでなく、2番目と3番目のメソッドを呼び出すことができるように、そのcmd行をします。

どうすればいいですか?同僚がサービスを停止できないようにするにはどうすればよいですか?
サービスメソッドをプライベートとして置くと、私はそれらをcmd行から呼び出すことができません。

答えて

0

これは私が得たものです。

Thread.current['DRb']['client'].peeraddr

これは4つの項目とほとんど配列を返します。最初はプロトコル、2番目はポート、3番目はホスト(名前)、4番目はアドレスです(名前がない場合はホストと同じです)。

ブライアンキャンドラーのおかげで、http://www.ruby-forum.com/topic/1962357

関連する問題