Explore Courses Blog Tutorials Interview Questions
0 votes
in AWS by (12.9k points)

I am migrating my Java,Tomcat, Mysql server to AWS EC2.

I have already attached EBS volume for storing MySql data. In my web application people may upload images. So I should persist them. There are 2 alternatives in my mind:

Save uploaded images to EBS volume.

Use the S3 service.

The followings are my notes, please be skeptic about them, as my expertise is not on servers, but software development.

EBS plus: S3 storage is more expensive. (0.15 $/Gb > 0.1$/Gb)

S3 plus: Serving statics from EBS may influence my web server's performance negatively. Is this true? Does Serving images affect server performance notably? For S3 my server will not be responsible for serving statics.

S3 plus: Serving statics from EBS may result I/O cost, probably it will be minor.

EBS plus: People say EBS is faster.

S3 plus: People say S3 is more safe for persistence.

EBS plus: No need to learn API, it is straight forward to save the images to EBS volume.

Namely I can not decide, will be happy if you guide.


1 Answer

0 votes
by (18.2k points)

I would suggest you use S3. With EBS, you will need to manage a volume, take care of attaching and mounting it on the instances. Whereas, S3 is just a set and forget service. It will all be managed and multiple machines can be performing parallel uploads without any hitch.

EBS also makes it harder to scale, as when you add new machines you will have to either pull off the image in order to separate the machine or copy the image across all.

Related questions

Want to get 50% Hike on your Salary?

Learn how we helped 50,000+ professionals like you !

Browse Categories