A media company is launching a global mobile voting application for a live televised talent show. The show expects up to million users to submit votes concurrently within a televised -minute window. The votes must be ingested, validated, and aggregated in real-time, with results displayed on screen. The ingestion tier must handle an immediate jump from zero traffic to over write requests per second. The backend database requires single-digit millisecond latency for write operations and must scale horizontally to handle the peak write volume. Which of the following architectures provides the most performant, scalable, and operationally efficient solution to meet these requirements?
- ADeploy an Application Load Balancer (ALB) to route traffic to an Auto Scaling Group of Amazon EC2 instances. Configure target tracking scaling on the ALB requests per target metric, and configure the EC2 instances to write votes to an Amazon RDS Multi-AZ PostgreSQL database.
- BDeploy an Application Load Balancer (ALB) to route traffic to Amazon Elastic Container Service (Amazon ECS) on AWS Fargate. Configure target tracking scaling with a short cooldown period of seconds on the ECS service to handle rapid scale-out. Write vote data to an Amazon DynamoDB table with on-demand capacity mode.
- Deploy a Network Load Balancer (NLB) to route traffic to an Amazon Elastic Container Service (Amazon ECS) cluster on AWS Fargate. Pre-warm the ECS tasks by configuring scheduled scaling to launch the required number of tasks before the voting window opens. Write vote data to an Amazon DynamoDB table configured with provisioned capacity, pre-provisioned to Write Capacity Units (WCUs), using a partition key with high cardinality such as a combination of ContestantID and a random shard number.Cevap
- DDeploy an Application Load Balancer (ALB) and submit a support ticket to AWS to pre-warm the ALB to handle the expected traffic. Route traffic to an Amazon ECS service on AWS Fargate. Write vote data to an Amazon Aurora MySQL database, and enable Aurora Auto Scaling for the reader endpoint to scale the database to handle the write volume.
Cevap
Deploy a Network Load Balancer (NLB) to route traffic to an Amazon Elastic Container Service (Amazon ECS) cluster on AWS Fargate. Pre-warm the ECS tasks by configuring scheduled scaling to launch the required number of tasks before the voting window opens. Write vote data to an Amazon DynamoDB table configured with provisioned capacity, pre-provisioned to Write Capacity Units (WCUs), using a partition key with high cardinality such as a combination of ContestantID and a random shard number.
The correct architecture uses a Network Load Balancer (NLB) which natively handles sudden, massive spikes in traffic without the need for pre-warming. In addition, scheduling ECS task scaling before the event ensures that the compute tier is ready to process requests immediately. Pre-provisioning DynamoDB Write Capacity Units (WCUs) ensures that the database has the required throughput, and utilizing write sharding (ContestantID + random shard) avoids hot partitions by distributing write operations across multiple physical partitions.
Adım Adım Çözüm
Anahtar Kavram
Handling sudden flash traffic spikes by combining NLB (which scales instantly without pre-warming), scheduled compute scaling, and pre-provisioned DynamoDB tables with partition key sharding.
Tahmini Süre:3m 0s