An advertising technology platform is preparing to launch a real-time bidding service that receives bid requests from thousands of publishers. The service is expected to experience a baseline traffic of requests per second (RPS), with immediate spikes up to RPS during scheduled regional shopping events. The backend runs on Amazon Elastic Container Service (ECS) on AWS Fargate behind an Application Load Balancer (ALB). The application queries an Amazon Aurora PostgreSQL database for campaigns and user profiles. To ensure sub-second response times and high availability during these flash traffic events, which two architectural optimization strategies should a Solutions Architect recommend?
- Submit a support case to AWS to pre-warm the Application Load Balancer (ALB) with the expected traffic profile and rate of increase before the scheduled shopping events.Answer
- Configure Application Auto Scaling for Aurora Replicas to dynamically scale read capacity based on average CPU utilization, and configure the application to use the Aurora reader endpoint for read queries.Answer
- CRely on the Application Load Balancer's (ALB) built-in automatic scaling to handle the sudden RPS traffic spikes without pre-warming, as ALBs dynamically scale to any load instantly.
- DConfigure the Amazon Aurora database with a Multi-AZ deployment and configure the application to route read queries to the passive standby instance to offload the primary instance.
- ESet the scale-out cooldown period for the ECS service's Auto Scaling policy to seconds to ensure tasks scale out rapidly without waiting for previous tasks to finish launching.
Answer
To handle sudden, massive traffic spikes and maintain database performance, the solutions architect should request ALB pre-warming from AWS Support to prevent initial connection drops, and configure dynamic Application Auto Scaling for Aurora Replicas to scale read queries distributed through the Aurora reader endpoint.
Requesting ALB pre-warming prepares the load balancer infrastructure to accept RPS without dropping connections due to rapid traffic surges. Using Aurora Replicas with Auto Scaling and targeting the reader endpoint dynamically spreads the query load across active readers, preventing database bottlenecking.
Step-by-Step Solution
Key Concept
Handling massive flash traffic spikes requires pre-warming load balancing resources, scaling read replicas dynamically using correct database endpoints, and configuring container scaling metrics with realistic cooldown targets.