What should a solutions architect do to meet these requirements?
Replace the existing architecture with a website that is served from an Amazon S3 bucket. Configure an Amazon CloudFront distribution with the S3 bucket as the origin. Set the cache behavior settings to cache based on the Accept-Language request header.
Configure an Amazon CloudFront distribution with the ALB as the origin. Set the cache behavior settings to cache based on the Accept-Language request header.
Create an Amazon API Gateway API that is integrated with the ALB. Configure the API to use the HTTP integration type. Set up an API Gateway stage to enable the API cache based on the Accept-Language request header.
Launch an EC2 instance in each additional Region and configure NGINX to act as a cache server for that Region. Put all the EC2 instances and the ALB behind an Amazon Route 53 record set with a geolocation routing policy.
Explanations:
Serving the website from an S3 bucket would require significant rearchitecting, as it is currently hosted on EC2 instances. Also, it does not meet the requirement of using the existing architecture.
Configuring an Amazon CloudFront distribution with the ALB as the origin provides a global edge cache, reducing latency for users around the world. Setting the cache behavior to cache based on the Accept-Language header supports language-based responses without altering the architecture.
API Gateway is more suitable for REST APIs, not for serving a dynamic website. Additionally, enabling API caching does not address the latency issue effectively for a globally distributed audience.
This approach requires additional EC2 instances in multiple Regions, which contradicts the requirement to avoid recreating the architecture in multiple Regions.