next up previous contents index
Search Next: XML-RPC Up: Ein Ruby-Client/Server-1x1 Previous: Pi und kein Ende   Contents   Index

DRb: Distributed Ruby

DRuby (Distributed Ruby) ist im Ruby Application Archive [RAA] verfügbar. Nach dem Herunterladen wird das Archiv entpackt und das darin enthaltene Skript install.rb aufgerufen.

DRb[*] erlaubt es, verteilte Ruby-Anwendungen zu erstellen. Dabei können über TCP Botschaften an entfernte Ruby-Objekte gesendet werden. Dies ist zum Beispiel interessant, wenn ein Dienst in Ruby zur Verfügung gestellt werden soll, ohne den Quellcode zu zeigen. Ein ISP kann ein Ruby-Objekt mit einer einfachen Schnittstelle zur Verfügung stellen, über das Anwender dann Daten austauschen können.

DRb ist im Ruby Application Archive [RAA] unter dem Stichwort druby zu finden.

Ein DRb-Server ist mit wenigen Zeilen skizziert.

require 'drb'
class TestServer
  def doit
    "Hallo, verteilte Welt"
  end
end

aServerObject = TestServer.new
DRb.start_service('druby://localhost:9000',
  aServerObject)
DRb.thread.join

Der zugehörige Client baut die Verbindung zum Server auf und führt dann auf dem Server eine Anweisung aus.

require 'drb'
DRb.start_service
obj = DRbObject.new(nil, 'druby://localhost:9000')
p obj.doit
#-> "Hallo, verteilte Welt"

Es gibt im Ruby Application Archive [RAA] übrigens auch ein Projekt namens Rinn, das sich zum Ziel gesetzt hat, CORBA-Ruby-Mappings und einen IDL-Compiler zu erstellen.



Footnotes

... DRb[*]
Rubys Antwort auf RPC, CORBA und RMI

next up previous contents index
Search Next: XML-RPC Up: Ein Ruby-Client/Server-1x1 Previous: Pi und kein Ende   Contents   Index
(C) 2002 by dpunkt.de, Armin Roehrl, Stefan Schmiedl, Clemens Wyss 2002-01-20