A SaaS company is launching a real-time reservation platform for dental clinics. The platform must handle a high volume of appointment searches and bookings. During a nationwide promotional campaign, search traffic is expected to scale instantly from a baseline of requests per second to over requests per second. The application runs on Amazon ECS container instances behind an Application Load Balancer (ALB). The primary database is a Multi-AZ Amazon RDS for PostgreSQL DB instance. The application requires highly available, replicated caching of session states and search results, and must scale to meet the demand without dropping requests or overloading the database. Which set of actions should the Solutions Architect take to optimize the performance and scalability of the platform?
- Request AWS Support to pre-warm the Application Load Balancer to handle the sudden surge. Deploy an Amazon ElastiCache for Redis cluster with Multi-AZ enabled to cache search results and sessions. Create RDS Read Replicas and configure the application to route read queries to the replicas instead of the primary DB instance.Answer
- BRely on the Application Load Balancer's automatic scaling to adjust to the traffic volume. Configure the application to route read queries to the RDS standby DB instance in the secondary Availability Zone to distribute database load. Deploy an Amazon ElastiCache for Memcached cluster to cache search results.
- CRequest AWS Support to pre-warm the Application Load Balancer. Deploy an Amazon ElastiCache for Memcached cluster with automatic failover to cache session states and search results. Route all read queries to the primary RDS DB instance while enabling automatic storage scaling to handle the database load.
- DConfigure the Application Load Balancer with target tracking scaling policies to handle the sudden traffic surge. Deploy an Amazon ElastiCache for Redis cluster to cache search results. Configure the application to route write queries to the primary DB instance and read queries to the RDS standby DB instance.