Overall Satisfaction with Amazon S3 (Simple Storage Service)
Amazon S3 is used to store all assets from our users. We store profile pictures, message attachments, and other user-related assets. We currently use Heroku to serve the application and it requires an external storage for these kinds of assets. We chose Amazon S3 because it's the most well known and trusted service for this.
- A lot of libraries to make it easy to use it
- A good price for the service
- Fine grained permissions
- Hard to use UI. Amazon likes to make things complicated in the UI
- Vendor lock-in. When you start using products by Amazon, you usually get a vendor lock-in, as everything is there. It's not bad per se, but it's important to think about it
- It allowed us to scale our application easily as it does not depend on the local file system anymore.
- It allowed us to implement the CloudFront CDN easily since we could just point to the S3 bucket.