Simple Storage Service

warning: cal_days_in_month() [function.cal-days-in-month]: invalid date. in /home/.kuddles/miltonmoura/defaultbreak.com/sites/all/modules/archive/archive.module on line 106.

We have been using Amazon’s Simple Storage Service (S3) at belacena.com for almost a year now.

Soon after launching the website, we started to feel some limitations regarding Apache’s, and later, lighttpd’s ability to handle medium-sized (6-15mb) .FLV files required for the video streaming.

After some system & web server optimizations, we kept hitting bottlenecks and decided to use a distributed content-delivery network such as Amazon’s S3 service. We could not afford more servers and cloud storage looked too good to be true.

Overall, we could not be more satisfied with the service. It is fast, reliable and very easy to use & integrate with your web applications.

Nevertheless, we have had two major outages since then: one in February and one this past week.

The first time, we were caught off-guard. The video streaming service was down throughout the outage. It was frustrating and we made an effort to handle such failures in the future.

We have always kept a local copy of the files we upload to S3, so we setup a cron script that runs every Nth minute and pings the main AWS S3 host. If it is down, we set a memcached variable to false and on the video rendering server page we check for this variable to decide if we should stream from S3 or from our local server.

Thanks to this, we were able to keep our service up during this week’s outage without having to worry about anything.

Update: Amazon has issued a statement concerning July’s 20th outage.