S3 – A guide to Simple Storage Service from Amazon.

S3 described in really simple terms. By the end of this guide you should understand what S3 is and why we use it

S3 stands for Simple Storage Service.

S3 is storage supplied by Amazon (yup, the same company that sell you books and just about everything else!). It can be used for storing pretty much anything.

It is very common for web developers to make their application use S3 for storing files uploaded by the users of the application.

S3 storage is divided up by buckets. Buckets are just like folders that you can specify permissions on. It is quite common for a project to have different buckets for each environment their website is built on (the development version of the application, the staging version and the production version).

Having assets and file uploads on a different server from your code can be very good for the user. You can make S3 work with Amazon’s CDN, this means that the files will be on lots of different servers, some of which will hopefully be close to your user meaning they will download faster.

We normally use code built by Amazon to interact with S3 in our web sites, you can also connect to it using applications you can run on your computer.

This is part of our Simple CS series, where we explain Computer Science and Web Development terms in really simple language. Excellent for beginners or if you just need a quick refresher.

Access to the series is completely free, if you have found it useful we would really appreciate it if you could let people know about the project.

If there is a term you would like me to cover please drop us an email or tweet.

Recent posts View all

Ruby

How to ignore Bullet in RSpec tests

Using Bullet during a test can pick up mistakes but also has false negatives; here is an easy way to ignore them

Ruby

How we used Nokogiri to fix a sizing issue in YouTube's oEmbed

At some point, one of our calls to YouTube's oEmbed endpoint was returning videos way too small; we fixed in in our Rails application by using Nokogiri