Choosing the best EC2 Instance for your production needs
1 Answer

The deployment choices are made keeping in mind that the website needs to handle 2 million users per month.

Current Webserver requirement: 4 vCPUs + 14GB RAM

Current Database Server requirement: 1 vCPUs + 3GB RAM

First thing first, we need to decide upon a region to deploy EC2 instances. Here's a great blog by Concurrency Labs to help us choose one.

Recommended: N. Virginia (us-east-1)

Next up, read about various AWS instance types and use AWS cost calculator to calculate approx cost.

Here are the most suitable instances as per our needs. However, It could be overwhelming to find the best from gazillion choices.

Plan Type Plan Name Arch #CPU #RAM (GB) Hourly Rate ~ Monthly Cost Good for
General Purpose m6g.medium arm 1 4 - 15 USD Db server
General Purpose m6g.xlarge arm 4 16 - 50 USD Web server
General Purpose t3a.xlarge x86 4 16 - 71 USD Web server

Went ahead with t3a.xlarge for Web server and m6g.medium for Mysql server.

Important Note: It's better to stick with Intel x86 architecture for docker because it's more popular with other vendors as compared to arm architecture. Because in the future, if you need to move out of AWS, it might just be easy.

Please log in to add an answer.