Yesterday I spent some time exploring Amazon S3 ("Simple Storage Service".) I'm surprised how many of my IT friends don't know much about Amazon AWS servicees, so I thought I'd write a little about the ones I've played with.
S3 is an object storage service - basically drop-box-for-servers - that hooks up to all their other services. It'll store all kinds of objects: files, images and blobs of all kind as long as they're 5GB or less.
I logged into the AWS console with a demo account I use for this kind of thing. I created an S3 bucket, got the security issues worked out using Amazon's CLI for Mac, and hooked it up to a demo EC2 Amazon Linux server using s3fs - a file system that allows you to mount S3 buckets on a server.
Then I brought up an ftp service that stores documents in the s3fs mounted volume.
I can also access S3 via the Amazon AWS console, windows desktops and servers and Mac desktops via a variety of SDK's including Java, .NET, Python, PHP, Node.js and Ruby as well as mobile devices (and, of course, any Amazon EC2 server.) You can trigger Lambda events with S3 activity and even connect it to databases (RDS, DynamoDB).
One of the things I love about AWS services is that they all connect to each other and they're all optional; you only use what you need, and you only pay for what you use.
Their "free tier for a year" program lets you try out many of their services for free - just sign up for an Amazon AWS account and try it out. There is a learning curve to get started, but there is plenty of advice available via Google. Even if you inadvertently buy a for-pay service, they're all pretty cheap for the kinds of experiments you're likely to be doing. And you can check your "bill" any time to avoid any month-end surprises.
Try it: https://aws.amazon.com/s3/getting-started/