Soru

Zorluk: OrtaImproving Database and Caching Efficiency

A real-time ride-sharing application tracks driver availability and active passenger sessions. The backend database is an Amazon RDS for PostgreSQL DB instance. During rush hours, the platform experiences a massive surge in read queries from passengers searching for nearby driver metadata and viewing their active trip statuses. This surge causes database CPU utilization to spike to 95%95\%, resulting in dispatch delays. The passenger session data must be cached with sub-millisecond latency, must survive cache node failures, and must be replicated across multiple Availability Zones. Additionally, the database read load must be optimized.

Which two actions should a solutions architect take to resolve these bottlenecks and satisfy the high availability requirements? (Select TWO.)

  1. Deploy an Amazon ElastiCache for Redis cluster with Multi-AZ and automatic failover enabled, and configure the application to cache passenger session data.Cevap
  2. Deploy Amazon RDS Read Replicas, and configure the application to direct read-heavy queries for nearby driver metadata to the read replica endpoints.Cevap
  3. C
    Deploy an Amazon ElastiCache for Memcached cluster across multiple Availability Zones, and configure the application to cache passenger session data.
  4. D
    Enable Multi-AZ deployment on the primary RDS for PostgreSQL DB instance, and configure the application to route read queries for driver metadata to the standby replica.
  5. E
    Configure a single-node Amazon ElastiCache for Redis cluster, and implement a pilot light disaster recovery strategy in a secondary Availability Zone to replicate cached session data.

Cevap

Deploy an Amazon ElastiCache for Redis cluster with Multi-AZ and automatic failover enabled to store active passenger sessions, and deploy Amazon RDS Read Replicas to offload read-heavy driver metadata queries from the primary database.
Caching passenger session data in an Amazon ElastiCache for Redis cluster with Multi-AZ and automatic failover ensures that sub-millisecond latency requirements are met and that the cache survives node failures through automated replication and failover. Offloading read-heavy queries for driver metadata to Amazon RDS Read Replicas directly reduces the CPU utilization on the primary DB instance, resolving the performance bottleneck.

Adım Adım Çözüm

1
Analyze the database bottleneck and caching requirements.
Identified that active passenger session data requires low-latency access, high availability, and replication to survive node failures, while driver metadata queries are causing high CPU utilization.
This analysis determines the architectural constraints for caching and database scalability.
2
Select the appropriate caching solution.
Chose Amazon ElastiCache for Redis with Multi-AZ and automatic failover over Memcached.
Redis supports Multi-AZ replication and failover, fulfilling the high availability requirements for session data, whereas Memcached lacks replication and data would be lost upon node failure.
3
Select the database scaling strategy.
Chose RDS Read Replicas to offload read-heavy driver metadata queries.
Read replicas horizontally scale read-heavy traffic and reduce primary DB CPU load, whereas Multi-AZ standby instances cannot serve read traffic.

Anahtar Kavram

Selecting ElastiCache for Redis for highly available replicated caching, and using RDS Read Replicas instead of Multi-AZ standby instances to scale read queries.
Bu soruyu puanla