A financial trading platform is launching a new real-time market simulation application. During the opening bell at AM EST daily, traffic instantly surges from a baseline of near zero to over concurrent connections within a two-minute window. The application requires sub-millisecond read access to the current price tickers and must handle the write traffic of order placements. The architecture consists of an Application Load Balancer (ALB), an Auto Scaling group of Amazon EC2 instances, and an Amazon Aurora PostgreSQL database. Which architecture design should a solutions architect recommend to optimize performance and scalability during the daily peak?
- AConfigure a target tracking scaling policy for the EC2 Auto Scaling group with a cooldown period of seconds to respond quickly to the surge. Rely on the ALB to scale dynamically as traffic increases. Use Aurora Replicas with Auto Scaling to handle the database read load.
- BConfigure a target tracking scaling policy for the EC2 Auto Scaling group based on ALB request count per target. Enable RDS Multi-AZ on the database cluster, directing read traffic to the standby instance in the secondary Availability Zone to offload queries from the primary writer instance during peak hours.
- Configure a scheduled scaling policy for the EC2 Auto Scaling group to scale out before AM EST, and submit a support ticket to AWS to pre-warm the ALB for the expected traffic. Add Aurora Replicas to the database cluster and configure Aurora Auto Scaling based on CPU utilization to scale reads, while utilizing Amazon ElastiCache for Redis to cache ticker prices.Answer
- DReplace the EC2 tier with AWS Lambda functions triggered by the ALB. Use Aurora Replicas to scale reads. Do not configure reserved concurrency on the Lambda functions so they can burst freely up to the regional account limits to handle the burst.
Answer
Configure a scheduled scaling policy for the EC2 Auto Scaling group to scale out before AM EST, and submit a support ticket to AWS to pre-warm the ALB for the expected traffic. Add Aurora Replicas to the database cluster and configure Aurora Auto Scaling based on CPU utilization to scale reads, while utilizing Amazon ElastiCache for Redis to cache ticker prices.
The correct architecture addresses the flash traffic pattern by proactively scaling out the compute tier using scheduled scaling prior to the known peak at AM EST, and requesting ALB pre-warming from AWS Support. Read throughput is scaled horizontally using Aurora Replicas combined with Amazon ElastiCache for Redis to satisfy the sub-millisecond latency requirement.
Step-by-Step Solution
Key Concept
Handling flash traffic surges requires proactive scaling (pre-warming load balancers and scheduled EC2 scaling) combined with read scaling through read replicas and caching layers.
Estimated Time:2m 30s