An application performs mostly reads, and its single primary database server is saturated during peak hours. Three read replicas were built months ago but receive almost no traffic because every application connection points at the primary. Which change best uses the existing infrastructure?
Select an answer to reveal the explanation.
Short Explanation
Three idle checkout lanes and one huge queue: you open the other lanes. A load balancer sends read traffic across the replicas so no single server gets crushed. Don't forget the primary still takes the writes.
Full Explanation
Load balancing distributes client connections or requests across multiple database servers so that no single node becomes the bottleneck. For a read-heavy workload with existing replicas, a load balancer, proxy or driver-level routing directs read-only traffic across the replicas while writes continue to go to the primary. Capacity for reads scales roughly with the number of healthy replicas, and health checks remove a failed replica from rotation. Scaling the primary vertically can help but costs more, has hard limits and leaves already paid-for replicas idle, ignoring the existing infrastructure the stem points to. Partitioning large tables can improve some queries through partition elimination, but all traffic would still hit one saturated server, so it does not address the concentration of load. Pointing every connection at one replica simply moves the bottleneck to a different single server and breaks writes, since replicas are typically read-only. Exam caveat: replicas may lag behind the primary, so reads that must see a just-committed write, such as a user viewing an order they just placed, may need to go to the primary. Operational check: after enabling routing, confirm in monitoring that read connections are spread across all replicas and that primary CPU drops during the next peak period.