Question

Difficulty: MediumPerformance and Scalability Optimization

A television broadcasting company is launching a live interactive voting platform for a popular singing competition. During the 1010-minute voting window, the application expects an immediate surge from 100100 requests per second to over 80,00080,000 requests per second. The application runs on Amazon EC2 instances behind an Application Load Balancer (ALB) and uses an Amazon RDS for PostgreSQL database. Initial testing shows the ALB drops incoming requests during the sudden spike, and the database experiences severe read contention from checking participant metadata.

Which two actions should the Solutions Architect take to optimize the performance and scalability of the platform under these conditions?

  1. Submit a support case to AWS to pre-warm the Application Load Balancer with the expected traffic rate.Answer
  2. Migrate the database to Amazon Aurora PostgreSQL and configure Aurora Replicas with Auto Scaling to handle the read query load.Answer
  3. C
    Rely on standard target tracking auto-scaling policies to scale the Application Load Balancer dynamically as traffic begins to increase.
  4. D
    Enable Multi-AZ replication on the Amazon RDS database and update the application configuration to route read traffic to the standby instance.
  5. E
    Deploy Amazon ElastiCache for Memcached and set up multi-AZ replication to serve cached participant metadata with high availability.

Answer

To optimize the platform's performance and scalability, the Solutions Architect should submit a support case to pre-warm the Application Load Balancer and migrate the database to Amazon Aurora PostgreSQL to use Aurora Replicas with Auto Scaling.
The correct choices are pre-warming the Application Load Balancer and migrating the database to Amazon Aurora PostgreSQL to use Aurora Replicas with Auto Scaling. Pre-warming prepares the load balancer for the immediate volume, preventing packet loss. Aurora Replicas with Auto Scaling allow the application to handle high volumes of read queries by spreading them across dynamically scaled replicas.

Step-by-Step Solution

1
Address the load balancer bottleneck for sudden traffic surges.
Identify that the Application Load Balancer requires pre-warming to handle an immediate rise from 100100 to over 80,00080,000 requests per second.
Standard ELB auto-scaling is reactive and cannot scale fast enough for instant, massive spikes.
2
Resolve the database read contention bottleneck.
Select Amazon Aurora PostgreSQL as the database target to support horizontal read scaling.
Aurora Replicas support auto-scaling to distribute read traffic and reduce CPU load on the primary DB instance.
3
Eliminate invalid architecture options.
Discard RDS Multi-AZ standbys for read traffic and Memcached for multi-AZ replication scenarios.
RDS standby instances cannot serve read traffic, and ElastiCache for Memcached lacks multi-AZ replication support.

Key Concept

Performance and scalability optimization under flash traffic conditions
Rate this question