dRubyを使ってみた

dRubyとは

  • 分散オブジェクトプログラミングのためのライブラリ
  • Ruby のプロセスから他のRubyプロセスにあるオブジェクトのメソッド を呼びだすことができる
  • 他のマシン上のプロセスにも アクセスできる

Document

Source

受信側

require 'drb/drb'

class Puts
    def initialize(stream = $stdout)
            @stream = stream
    end
    def puts(str)
            @stream.puts(str)
    end
end

uri = ARGV.shift
DRb.start_service(uri, Puts.new)
puts DRb.uri
sleep

送信側

require 'drb/drb'

uri = ARGV.shift
client = DRbObject.new_with_uri(uri)
client.puts('Hi ')

実行

受信側

ruby receive.rb druby://localhost:10000

送信側

ruby post.rb druby://localhost:10000

実行結果

受信側

% ruby put.rb druby://localhost:10000
  druby://localhost:10000
  Hi

dRubyを使ってみて

Cとかで実装するよりも簡単に行うことが出来ました

コメントを残す