Tour de force

WooExpert Platinum WooCommerce partner - biggest elephant in the eCommerce room.
Mailchimp Partner Mailchimp partner - you know what’s the newest cutting edge customer experience solution? Great email subject!
Clutch logo Clutch - clients say we’re top dogs in eCommerce. Throw us that stick now.
WordPress Vip WordPress VIP - Enterprise hosting partner

Rackspace CloudFiles versus AWS Amazon Simple Storage Service S3 [CLOUD BATTLE]

Today we will front two similar guys in cloud storage space: Rackspace CloudFiles & Amazon Simple Storage Service (S3). These prominent players have been with us for quite some time now and have been serving our static HTTP requests with more than just a smile. Amazon did start earlier but we cannot bypass Rackspace which is famous for its fanatical support and general hosting experience.

Listen to this article
0.5x 0.75x 1x 1.25x 1.5x


Both services are basically cloud storage services and act as giant hard disk where you can upload your files for instant or later use. These services are ideal for serving static content (video, photo, audio, documents) and you don’t have to worry about server storage limits, backup and redundancy, also they reside somewhere between PaaS and IaaS layer of cloud technology. So let the show-off begin.


AWS has built an impressive array of data centers around the globe and right now has a presence in 19 cities across three different continents.

On the other hand, Rackspace has teamed up with Akamai which is traditionally considered a leader in web infrastructure. These guys have around 86.000 servers and have done projects like live streaming to 700.000 YouTube users or delivering 20% of overall web traffic. See the video for detailed visualization.

Some tests on CDN speeds have favoured Cloudfront over Akamai but we have also pulled some internal tests on large data files (video/audio) and have come to the conclusion that it is the other way around i.e. Akami wins. You can test the CDN online by yourself to check the scores but we will vote for Rackspace/Akami in this round.


Amazon was the pioneer in cloud storage space and unfortunately for RackSpace, AWS position stays rock solid in features area. AWS has Multi-user fragmentation options, large data import/export plans, reduced redundancy options, region storage selection, and versioning…just to name a few. Rackspace is once again better in customer support and OpenStack policy which is generally a good thing, but features points go to AWS this time.

One thing that excels in AWS is the option to do native CDN streaming via RTMP and this is the killer functionality that puts the large victory for AWS in this round.


Being first in the field means that developers had time to develop on top of your platform. This rule has proven right as S3 has been the platform storage layer for top-notch apps like Dropbox, Twitter and JungleDisk (which also supports CloudFiles now) just to name a few making the S3 ecosystem large, important and scalable.

As for the tools for managing S3 or Cloudfiles … AWS S3 is a clear winner with over 35 apps that let you manage S3 accounts with partial or all functionality.


a. AWS – AWS will use commercially reasonable efforts to make Amazon S3 available with a Monthly Uptime Percentage (defined below) of at least 99.9% during any monthly billing cycle (the “Service Commitment”). In the event Amazon S3 does not meet the Service Commitment, you will be eligible to receive a Service Credit as described below.

Service Credits are calculated as a percentage of the total charges paid by you for Amazon S3 for the billing cycle in which the error occurred in accordance with the schedule below.

Designed to provide 99.99% durability and 99.99% availability of objects over a given year. This durability level corresponds to an average annual expected loss of 0.01% of objects. Designed to sustain the loss of data in a single facility.

b. CloudFiles – CloudFiles SLA is very similar to S3 but has the major advantage of returning credits if they fail to meet the required uptime. The credit amount can go to 100% as you see in the SLA picture bellow

With the credits in mind, we give this round to RackSpace making the score once again even!


CDN integration is becoming more and more important as your website/service grows and you need to serve static content that is close to your user. This round generally resides in the first section but we decided to give it a separate round as from our perspective your users are the ones that will use your service and CDN is a big part of the experience. RackSpace CloudFiles have native integration with Akamai (before it was LimeLight) and you don’t need to do any extra work for enabling it. AWS has a more complicated CDN solution as you need to sign-up for CloudFront, set up distributions and make extra payments. One more important thing for AWS…it supports CDN RTMP streaming of your media files. Super cool but we will give this round points for CloudFiles as they really got this part of it right without extra hassle. AWS CDN is more powerful in functionality but we gave them points for functionality already so…


CloudFiles has an ReSTful API with a clear and concise developers guide. It also supports client libraries built in Java, PHP, .NET, Python & Ruby making development on top of their platform layer extra easy.

using com.mosso.cloudfiles;
using com.mosso.cloudfiles.domain;

public class processImage : IHttpHandler
public void ProcessRequest (HttpContext context)
UserCredentials uc = new UserCredentials("mossoUID", "mossoKEY");
Connection cn = new Connection(uc);

cn.PutStorageItem("mossoImageContainer", "c:\CoolFileImage.jpg");

While CloudFiles support for their API and libraries is enough for any type of development it cannot match AWS API for S3 and their libraries, articles, forums, FAQs, discussion boards and more. AWS supports its own official libraries as well as customer libraries for development which are in a fair stable releases.

using Amazon.S3;
using Amazon.S3.Model;
using Amazon.S3.Transfer;
using Amazon.S3.Util;

public class imageHandler : IHttpHandler
public void ProcessRequest (HttpContext context)
  AmazonS3Config s3config = new AmazonS3Config();
  s3config.UseSecureStringForAwsSecretKey = false;

  AmazonS3Client s3client = new AmazonS3Client("AKID", "SECRET_KEY", s3config);

  PutObjectRequest poReq = new PutObjectRequest();
  poReq.BucketName = "Bucket_Name";
  poReq.FilePath = "c:\CoolFileImage.jpg";
  poReq.Key = "DESIRED_FILE_NAME";
  poReq.CannedACL = S3CannedACL.PublicRead;
  PutObjectResponse poResp = s3client.PutObject(poReq);

Also, having the AWS management console is a superb way for managing your development resources in an easy/GUI way.


Support is something you need to pay for at AWS. Making this test a little unfair as Rackspace has native fanatical support included in the CloudFiles pricing. As for the quality of the service…. Rackspace is known for its support and we as a company can back it up as we use it on a daily basis. Live chat, emails, forums, ticketing, phone calls 24/7…all are included.

AWS has multi-tier support from Bronze to Platinum packages but for instance, their fastest guaranteed response is 15 minutes as Rackspace pushes it to one minute in every situation via Live Chat. Also, note that Rackspace has greater experience in general hosting as a company and can provide insights for various not-cloud fields.

Our recommendation: If you need fast, lightweight and easy access to CDN or Cloud storage then go for CloudFiles as they are easier to set up. Costs are generally lower in the long run. If you are a developer and building a scalable app then go for the S3 solution as it is much more powerful and feature-based.

Krešimir Končić
Krešimir Končić Owner at Neuralab

Ex QBASIC developer that ventured into a web world in 2007. Leading a team of like-minded Open Source aficionados that love design, code and a pinch of BBQ. Currently writing a book that explains why ‘coding is the easier part’ of our field.

Subscribe to our quarterly newsletter

Please fill in this field.
Please thick this field to proceed.

Related blog posts