I'm taking my first course For AWS cloud practitioner and I am curious:
The case: I have a single, client-facing application hosted on an EC2 instance. Let's keep it simple and say it's brochureware, the database is in a volume attached to the instance. It's using us-west-2a as its availability zone.
The conundrum: I understand the use of CDNs as they essentially store a copy of the application in the edge locations so clients can be delivered a static copy quickly without using up EC2 compute time.
I also understand regions but only to the extent that it is an initial starting point for building out your application.
What would be the nature of cases that would require me to duplicate my EC2 instance to a new availability zone and run the two exact same applications simultaneously?
A few things pop-up for me initially:
- Computational availability (ex: the application client needs to request specific data, like a user defined request)
- Zone based version control (ex: an incremental rollout of a feature)
- And if I'm using this term right, fault tolerance (graceful degradation?). If one zone is down we can fall back to another.
Are these assumptions correct?