15. A travel company has deployed a website which serves travel updates to users all over the world. The traffic this database serves is very read heavy and can have some latency issues at certain times of the year. What can you do to alleviate these latency issues?
1. Configure RDS Multi-AZ
2. Add read replicas
Amazon RDS Read Replicas provide enhanced performance and durability for RDS database (DB) instances. They can be within an Availability Zone, Cross-AZ, or Cross-Region, and make it easy to elastically scale out beyond the capacity constraints of a single DB instance for read-heavy database workloads. You can create one or more replicas of a given source DB Instance and serve high-volume application read traffic from multiple copies of your data, thereby increasing aggregate read throughput. Read replicas can also be promoted when needed to become standalone DB instances. Read replicas are available in Amazon RDS for MySQL, MariaDB, PostgreSQL, Oracle, and SQL Server as well as Amazon Aurora. https://aws.amazon.com/rds/features/read-replicas/
3. Place CloudFront in front of the Database.
While CloudFront can provide performance benefits, read replicas are perfectly suited to meet this requirement.
For the above question I selected CloudFront because of the context "users all over the world" however I am very confused why "read replicas" is a better selection here. The explanation is not quality explanation, because it does not explain the thought process behind selecting Read Replica.
You use elastic cache in front of a database, not CloudFront. That’s placed in front of things like S3, EC2, etc. In regards to RDS, Read replicas add scalability and Multi-AZ adds redundancy. This is a scalability problem so Read Replicas are the way to go. You can add them in different Regions to help the latency issues.