Cloudbursing with Amazon EC2 and SQS
The concept of cloudbursting is very appealing. Who wouldn't want to maximize control and minimize costs by running a few servers in-house and borrowing public cloud resources when the odd demand spike occurs? This arrangement is particularly appealing if you already have a reason to run at least part of your system in-house, like Big Data that would cost a fortune to store in the public cloud. Unfortunately, the implementation is not so straightforward. You have to keep two asynchronous systems in lockstep across the public Internet while ensuring security, handling unpredictable latency, and optimizing for data locality. Learn how this can actually work with Amazon EC2 and SQS. The implementation is based on Ruby on Rails and Resque/Redis, but the concepts are broadly applicable.