Soru

Zorluk: OrtaPerformance and Scalability Optimization

A national election committee is launching a web portal to broadcast live election results. The portal is expected to experience a sudden surge in traffic, scaling from a baseline of 1,0001,000 concurrent users to over 1.5 million1.5\text{ million} concurrent users within a few minutes as soon as poll results are announced. The portal's current architecture consists of a web application running on Amazon EC2 instances in an Auto Scaling group behind an Application Load Balancer (ALB), and a backend Amazon RDS for PostgreSQL Multi-AZ DB instance. The workload is heavily read-intensive, with users constantly fetching the latest precinct counts. Which solution should a solutions architect recommend to ensure the application scales to meet this demand while maintaining high performance and availability?

  1. Place an Amazon CloudFront distribution in front of the ALB to cache the election results. Request AWS Support to pre-warm the ALB prior to the election, and deploy RDS Read Replicas to offload the read query volume from the primary DB instance.Cevap
  2. B
    Configure an Amazon CloudFront distribution in front of the ALB. Allow the ALB to scale dynamically, and configure the application to route read queries to the standby DB instance of the RDS Multi-AZ deployment to offload the primary DB instance.
  3. C
    Deploy Amazon ElastiCache for Memcached with multi-AZ replication enabled to cache database queries. Contact AWS Support to pre-warm the ALB before the event, and route read queries to the replication nodes.
  4. D
    Configure the ALB with dynamic target tracking scaling policies. Set the Auto Scaling group cooldown period to 10 seconds10\text{ seconds} to launch EC2 instances rapidly, and migrate the database to Amazon Aurora MySQL with reader auto-scaling configured.

Cevap

Place an Amazon CloudFront distribution in front of the ALB to cache the election results. Request AWS Support to pre-warm the ALB prior to the election, and deploy RDS Read Replicas to offload the read query volume from the primary DB instance.
The correct answer combines caching with Amazon CloudFront to reduce backend load, pre-warming the ALB to handle the immediate surge of 1.5 million1.5\text{ million} concurrent users, and deploying RDS Read Replicas to scale read queries horizontally. This ensures all layers of the application can handle the scale requirements.

Adım Adım Çözüm

1
Analyze the load balancer scaling needs.
Identify that traffic will surge from 1,0001,000 to 1.5 million1.5\text{ million} concurrent users within a few minutes, which constitutes flash traffic.
Because standard ALB scaling is gradual, a sudden traffic spike of this magnitude will result in dropped connections. Requesting AWS Support to pre-warm the ALB ensures it has the capacity provisioned beforehand.
2
Evaluate caching options to offload the application tier.
Introduce Amazon CloudFront in front of the Application Load Balancer.
Caching the election results at the edge minimizes the traffic that reaches the ALB and EC2 instances, drastically improving page load times and reducing compute costs.
3
Determine database scaling strategy.
Deploy RDS Read Replicas and route read traffic to them, while leaving the primary DB instance for writes.
The workload is read-intensive. An RDS Multi-AZ standby database cannot serve read traffic, so Read Replicas must be added to scale reads horizontally.

Anahtar Kavram

Handling sudden flash traffic on AWS requires pre-warming load balancers, offloading read-heavy queries using read replicas rather than relying on standby DB instances, and caching content at the edge with Amazon CloudFront.
Bu soruyu puanla