Part 1: Standard Library Chapter 1: Distributed Ruby (DRb) 1.1 Hello World 1.2 Proprietary Ruby Objects 1.3 Security 1.3.1 Access Control Lists (ACLs) 1.3.2 DRb Over SSL 1.4 ID Conversion 1.4.1 Built-in ID Converters 1.4.1.1 DRb::DRbIdConv 1.4.1.2 DRb::TimerIdConv 1.4.2 Building your own ID Converter 1.4.3 Using Multiple ID Converters 1.5 Conclusion Chapter 2: Rinda 2.1 Hello World, the Rinda Way 2.1.1 Ring Server 2.2 Understanding Tuples and TupleSpaces 2.2.1 Writing a Tuple to a TupleSpace 2.2.2 Reading a Tuple from a TupleSpace 2.2.3 Taking a Tuple from a TupleSpace 2.2.4 Reading All Tuples in a TupleSpace 2.3 Callbacks and Observers 2.3.1 Understanding Callbacks 2.3.2 Implementing Callbacks 2.4 Security With Rinda 2.4.1 Access Control Lists (ACLs) 2.4.2 Using Rinda Over SSL 2.4.3 Selecting a Ring Server 2.5 Renewing Rinda Services 2.5.1 Using a Numeric to Renew a Service 2.5.2 Using nil to Renew a Service 2.5.3 Using the SimpleRenewer class 2.5.4 Building a Custom Renewer 2.6 Conclusion Part 2: Third Party Frameworks and Libraries Chapter 3: Starfish 3.1 Installation 3.2 Getting Started with Starfish 3.3 Hello World, the Starfish Way 3.3.1 Using the Starfish Binary 3.3.1 Saying Goodbye to the Starfish Binary 3.4 Building a Distributed Logger with Starfish 3.5 Letting Starfish Shine 3.6 Conclusion Chapter 4: RingyDingy 4.1 Installation 4.2 Getting Started with RingyDingy 4.3 Hello World, the RingyDingy Way 4.4 Building a Distributed Logger with RingyDingy 4.5 Letting RingyDingy Shine 4.6 Conclusion Chapter 5: Distribunaut Chapter 6: Politics 6.1 Installation 6.2 Token Workers 6.3 Conclusion Chapter 7: Vertebra Part 3: Distributed Message Queues Chapter 8: Starling 8.1 What is a Distributed Message Queue? 8.2 Installation 8.3 Getting Started with Starling 8.4 Hello World, the Starling Way 8.5 Building a Distributed Logger with Starling 8.6 Persisted Queues 8.7 Getting Starling Stats 8.8 Conclusion Chapter 9: AMQP/RabbitMQ 9.1 What is AMQP? 9.2 Installation 9.3 Hello World, the AMQP Way 9.4 Building a Distributed Logger with AMQP 9.5 Persisted AMQP Queues 9.6 Subscribing to a Message Queue 9.7 Topic Queues 9.8 Fanout Queues 9.9 Conclusion Chapter 10: Nanite Part 4: Distributed Programming with Ruby on Rails Chapter 11: BackgrounDRb Chapter 12: Workling