Which of the following will meet the availability requirements with little change to the application while improving user experience and minimizing costs?
Migrate the database to a PostgreSQL database in Amazon EC2. Host the application and presentation layers in automatically scaled Amazon ECS containers behind an Application Load Balancer. Allocate an Amazon WorkSpaces WorkSpace for each end user to improve the user experience.
Migrate the database to an Amazon RDS Aurora PostgreSQL configuration. Host the application and presentation layers in an Auto Scaling configuration on Amazon EC2 instances behind an Application Load Balancer. Use Amazon AppStream 2.0 to improve the user experience.
Migrate the database to an Amazon RDS PostgreSQL Multi-AZ configuration. Host the application and presentation layers in automatically scaled AWS Fargate containers behind a Network Load Balancer. Use Amazon ElastiCache to improve the user experience.
Migrate the database to an Amazon Redshift cluster with at least two nodes. Combine and host the application and presentation layers in automatically scaled Amazon ECS containers behind an Application Load Balancer. Use Amazon CloudFront to improve the user experience.
Explanations:
Migrating the database to EC2 doesn’t provide high availability, and WorkSpaces may increase costs and complexity without addressing latency directly.
Migrating to Aurora PostgreSQL Multi-AZ enhances availability, while Auto Scaling EC2 with an Application Load Balancer optimizes performance. AppStream 2.0 improves user experience effectively.
While RDS Multi-AZ improves availability, Fargate may not be optimal for all application types, and ElastiCache might not address the latency issues as effectively as AppStream.
Redshift is designed for analytics, not transactional databases; ECS with a Load Balancer is fine, but CloudFront doesn’t address application-level latency in this scenario.