Which combination of actions should a solutions architect take to meet these requirements?
(Choose two.)
Configure Amazon CloudFront to cache multiple versions of the content.
Configure a host header in a Network Load Balancer to forward traffic to different instances.
Configure a Lambda@Edge function to send specific objects to users based on the User-Agent header.
Configure AWS Global Accelerator. Forward requests to a Network Load Balancer (NLB). Configure the NLB to set up host-based routing to different EC2 instances.
Configure AWS Global Accelerator. Forward requests to a Network Load Balancer (NLB). Configure the NLB to set up path-based routing to different EC2 instances.
Explanations:
Amazon CloudFront can cache multiple versions of content based on various parameters, including device type, allowing the delivery of optimized content to users. This CDN service can improve performance and provide device-specific content through cache behaviors.
A Network Load Balancer does not use host headers to forward traffic; it operates at the TCP level and does not inspect HTTP headers. Host header configuration is more relevant to Application Load Balancers, which can route based on application-layer information.
Lambda@Edge can manipulate requests and responses in CloudFront. By examining the User-Agent header, it can deliver specific content tailored to the user’s device type (e.g., mobile or desktop), thus meeting the requirement for device-specific content.
While AWS Global Accelerator can improve performance by routing traffic efficiently, it does not inherently support host-based routing for delivering different versions of content based on devices. It primarily optimizes the path to endpoints without application-layer routing.
Similar to D, AWS Global Accelerator does not facilitate path-based routing for delivering device-specific content. While it can route requests to a Network Load Balancer, path-based routing is typically handled by an Application Load Balancer, which is not mentioned here.