dRuby is a distributed object environment for Ruby. dRuby and Rinda are part of Ruby stdlib.
- RMI (remote method invocation) library
- extends Ruby method calls across the network
- allows calling object methods from other processes or machines
- written completely in Ruby
Rinda:
- shared tuplespace implementation.
- co-ordination mechanism running on dRuby.
- implementation of linda co-ordination language in Ruby
Rules for passing objects between client and server:
- serializable objects are passed by value
- non-serializable - by reference
Example code
Articles
- dRuby and Rinda: Implementation and application of distributed Ruby and its parallel coordination mechanism
- dRuby documentation
- Reflection, Object Space and Distributed Ruby
- dRb on Wikibooks
- Rinda 101
- Exploring Tuple Spaces Persistence In Ruby With Blackboard
- dRuby for penetration testers
- An Introduction to Distributed Ruby