How should a solutions architect redesign the architecture to better respond to changing traffic?
Configure a Network Load Balancer with a slow start configuration.
Configure AWS ElastiCache for Redis to offload direct requests to the servers.
Configure an Auto Scaling step scaling policy with an instance warmup condition.
Configure Amazon CloudFront to use an Application Load Balancer as the origin.
Explanations:
A Network Load Balancer (NLB) with a slow start configuration can help with traffic distribution but does not address the application’s long startup time. It would still result in user timeouts as the application takes time to become ready.
AWS ElastiCache for Redis can improve performance by caching frequently accessed data, but it does not solve the issue of the application’s startup delay. Timeouts would still occur while waiting for the application to become responsive.
Configuring an Auto Scaling step scaling policy with an instance warmup condition allows the system to wait for instances to become fully operational before considering them available for traffic. This mitigates the risk of timeouts during traffic bursts.
Amazon CloudFront can help with content delivery and reduce latency, but using an Application Load Balancer as the origin does not address the problem of the application taking a minute to start up. Users would still experience timeouts during peak traffic.