Distributed Programming with Ruby and over 1.5 million other books are available for Amazon Kindle . Learn more


or
Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Sorry, this item is not available in
Image not available for
Colour:
Image not available

 
Start reading Distributed Programming with Ruby on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Distributed Programming with Ruby (Addison-Wesley Professional Ruby) [Paperback]

Mark Bates

RRP: £25.99
Price: £23.55 & this item Delivered FREE in the UK with Super Saver Delivery. See details and conditions
You Save: £2.44 (9%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 2 left in stock (more on the way).
Dispatched from and sold by Amazon. Gift-wrap available.
Want delivery by Monday, 20 May? Choose Express delivery at checkout. See Details

Formats

Amazon Price New from Used from
Kindle Edition £20.02  
Paperback £23.55  
Amazon.co.uk Trade-In Store
Did you know you can trade in your old books for an Amazon.co.uk Gift Card to spend on the things you want? Visit the Books Trade-In Store for more details. Learn more.

Book Description

5 Nov 2009 0321638360 978-0321638366 1
 “A must have title for the well-rounded Ruby programmer building advanced Rails applications and large systems!”

OBIE FERNANDEZ, Series Editor

 

Complete, Hands-On Guide to Building Advanced Distributed Applications with Ruby

 

Distributed programming techniques make applications easier to scale, develop, and deploy—especially in emerging cloud computing environments. Now, one of the Ruby community’s leading experts has written the first definitive guide to distributed programming with Ruby.

 

Mark Bates begins with a simple distributed application, and then walks through an increasingly complex series of examples, demonstrating solutions to the most common distributed programming problems.

 

Bates presents the industry’s most useful coverage of Ruby’s standard distributed programming libraries, DRb and Rinda. Next, he introduces powerful third-party tools, frameworks, and libraries designed to simplify Ruby distributed programming, including his own Distribunaut.

 

If you’re an experienced Ruby programmer or architect, this hands-on tutorial and practical reference will help you meet any distributed programming challenge, no matter how complex.

 

Coverage includes

•   Writing robust, secure, and interactive applications using DRb—and managing its drawbacks

•   Using Rinda to build applications with improved flexibility, fault tolerance, and service discovery

•   Simplifying DRb service management with RingyDingy

•   Utilizing Starfish to facilitate communication between distributed programs and to write MapReduce functions for processing

     large data sets

•   Using Politics to customize the processes running on individual server instances in a cloud computing environment

•   Providing reliable distributed queuing with the low-overhead Starling messaging server

•   Implementing comprehensive enterprise messaging with RabbitMQ and Advanced Message Queuing Protocol (AMQP)

•   Offloading heavyweight tasks with BackgrounDRb and DelayedJob

 

 

 



Product details


More About the Author

Discover books, learn about writers, and more.

Product Description

From the Back Cover

 “A must have title for the well-rounded Ruby programmer building advanced Rails applications and large systems!”

OBIE FERNANDEZ, Series Editor

 

Complete, Hands-On Guide to Building Advanced Distributed Applications with Ruby

 

Distributed programming techniques make applications easier to scale, develop, and deploy—especially in emerging cloud computing environments. Now, one of the Ruby community’s leading experts has written the first definitive guide to distributed programming with Ruby.

 

Mark Bates begins with a simple distributed application, and then walks through an increasingly complex series of examples, demonstrating solutions to the most common distributed programming problems.

 

Bates presents the industry’s most useful coverage of Ruby’s standard distributed programming libraries, DRb and Rinda. Next, he introduces powerful third-party tools, frameworks, and libraries designed to simplify Ruby distributed programming, including his own Distribunaut.

 

If you’re an experienced Ruby programmer or architect, this hands-on tutorial and practical reference will help you meet any distributed programming challenge, no matter how complex.

 

Coverage includes

•   Writing robust, secure, and interactive applications using DRb—and managing its drawbacks

•   Using Rinda to build applications with improved flexibility, fault tolerance, and service discovery

•   Simplifying DRb service management with RingyDingy

•   Utilizing Starfish to facilitate communication between distributed programs and to write MapReduce functions for processing

     large data sets

•   Using Politics to customize the processes running on individual server instances in a cloud computing environment

•   Providing reliable distributed queuing with the low-overhead Starling messaging server

•   Implementing comprehensive enterprise messaging with RabbitMQ and Advanced Message Queuing Protocol (AMQP)

•   Offloading heavyweight tasks with BackgrounDRb and DelayedJob

 

 

 

About the Author

Mark Bates has been developing web applications of one kind or another since 1996. He has spent an ungodly amount of time programming Java, but thankfully he discovered Ruby in late 2005, and life has been much nicer since.

 

Since discovering Ruby, Mark has become a prominent member of the community. He has developed various open-source projects, such as Configatron, Cachetastic, Genosaurus, APN on Rails, and the Mack Framework, just to name a few. The Mack Framework brought Mark to the forefront of distributed programming in the Ruby community. Mack was a web framework designed from the ground up to aid in the development of distributed applications.

 

Mark has taught classes on both Ruby and Ruby on Rails. He has spoken at several Ruby gatherings, including 2008’s RubyConf, where he spoke about building distributed applications.

 

Mark has an honors degree in music from the Liverpool Institute for Performing Arts. He still likes to rock out on the weekends, but set times are now 10 p.m., not 2 a.m. He lives just outside of Boston with his wife Rachel and their sons Dylan and Leo, whom he missed very much when writing this book.

 

Mark can be found at http://www.markbates.com and http://github.com/markbates.

 


Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

There are no customer reviews yet on Amazon.co.uk.
5 star
4 star
3 star
2 star
1 star
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 4.3 out of 5 stars  3 reviews
4 of 4 people found the following review helpful
4.0 out of 5 stars An excellent survey of distributed systems programming in Ruby 16 Nov 2010
By Robert Y. Loh - Published on Amazon.com
Format:Paperback
This book provides an excellent survey of distributed programming techniques using the Ruby platform. As a software engineer who is largely unfamiliar with Ruby, but very familiar with distributed programming, I was able to leverage the book both to understand "how you do things" in Ruby, as well as to introduce myself to the (libraries, framework tools, etc.) which make distributed programming a reality. My experience in reading this book was that it had a great flow, and a very clean presentation on the subject matter. I walked away with a deeper understanding of the Ruby language itself, as well as a mapping from "strategy/design concept" to "implementation toolkit" should I have a need to write a distributed service in Ruby. In summary, the book provides an excellent survey of both distributed concepts, as well as several options available on the Ruby platform for each, covering: DRb, Rinda, RingyDingy, Starfish, Distribunaut, Politics, Starling, working with Rabbit MQ, BackgrounDRb, and Delayed Job.

Much like the Ruby language itself, the text is very concise in explaining even fairly complicated concepts. It achieves this focus of delivery by building on fundamental concepts, providing a very simple starting point, and layering on additional "would like to" one at a time, without confusing the underlying intention. This pattern is present both at the micro level, as each chapter introduces a new distributed challenge and leaves you with a working knowledge of what the Ruby space has to offer for solutions implementations; as well as at the macro level, as the topics of each chapter progress from very simple things like remote procedure calls and data marshalling, to advanced topics such as an remote work processor, distributed work queue based on a map-reduce framework or a message queue service. While the phrase "map-reduce" is mentioned in several topic headings, there is no actual example of a problem solved with a map and reduce against a distributed dataset. The final topic, although not directly a distributed programming concept, is useful information for any production system that does any work of interest: a work scheduler using BackgrounDRb.

In a similar way, each chapter presents a very tiny example app, with complete code, and a walk through, distinguishing between the concept at hand, and the library specific implementation semantics. Also, similar examples are used where appropriate, making it easier to understand the specific nuances of a particular library. Mirroring the measured build up of the text, the code samples evolve in a simple and natural way over the course of a given topic. Although one might complain that there is little imagination in the examples, this focus ensures that the reader walks away with a clear understanding of the "Hello World" level implementation - details are left up to further research.

My only complaint in terms of coverage is that the book is overly "Ruby-only" focused. As an engineer working in a largely heterogeneous environment, I would be interested in a comparison of the internal "Ruby" only packages (e.g. DRb or Rinda) vs. tools that are a bit more cross platform: e.g. in this case, a comparison against a more generalized, stack agnostic marshalling framework (e.g. Google's Protocol Buffers, Facebook's Thrift, Cisco's Etch, or Microsoft's M). In particular, this would signify where the Ruby platform offers a particular advantage for a particular kind of distributed problem. However, as the title goes, this text is focused on the Ruby specific implementations of various technologies, instead of how Ruby as a language plays (with others) in these various areas.

Overall, I would say this is an excellent resource to use as a pointer for further research. If you are developing distributed systems using Ruby, then you are likely already aware of a certain number of these libraries; the survey of alternative options might be informative. For someone like myself who is familiar with distributed systems development but relatively ignorant of Ruby, it proved to be an excellent introduction both to the language, as well as to the Ruby specific semantics for implementing a basic distributed design (e.g. marshalling, task / job execution, etc.)

(Reposted from Bay APLN [...])
1 of 4 people found the following review helpful
4.0 out of 5 stars Targetted Read 14 Feb 2010
By P. Chris Tusa - Published on Amazon.com
Format:Kindle Edition|Amazon Verified Purchase
If you are a ruby programmer looking to expand your knowledge on the DRB library, this book is an excellent & in-depth dive into the subject. Kindle owners will appreciate the e-book pricing.
2 of 15 people found the following review helpful
5.0 out of 5 stars The Best Object-oriented Design Book I have Read about Ruby on Rails best Practices 13 Nov 2009
By Edward M. Bowman III - Published on Amazon.com
Format:Paperback
This book reperents a major step forward for object-oriented design using RoR. I have found ruby an interesting language and have used this book to be a resource for my object-oriented design knowledge requirements. This book has changed the way I create distributed databases giving me a better knowledge of the best practices that go into creating such things. I will use this book as a reference guide for programming/software development need moving forward manning the efforts to create my apps. Thank you Mark for helping me better understand the ruby programming language for creating web apps.
Were these reviews helpful?   Let us know

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   
Related forums


Listmania!

Create a Listmania! list

Look for similar items by category


Feedback


Amazon.co.uk Privacy Statement Amazon.co.uk Delivery Information Amazon.co.uk Returns & Exchanges