
- App servers: Multiple app servers behind a load balancer are not a SPOF. If one server dies, the load balancer routes traffic to the remaining instances.
- Database reads: With replicas, reads can continue if the primary is unavailable. Note: replicas may lag, so reads might be stale.
- Database writes: Typically go to the primary only. If the primary fails, writes stop unless a replica is promoted. Running replicas alone is not sufficient — you must have an automated and safe promotion/failover strategy (or a consensus cluster) to avoid split-brain and data loss.
- Load balancer: Every incoming request passes through the load balancer. If you run a single LB instance, it becomes a SPOF even if app servers are redundant. Many cloud providers offer managed, redundant load balancers; the SPOF risk mainly applies to single self-hosted instances.
A single load balancer instance can make your whole fleet unreachable. Ensure LB redundancy (active/active or active/passive with automated failover) or use a managed, multi-AZ provider load balancer.

Higher availability generally requires greater redundancy, automated failover, robust testing, and increased operational cost.


- How much data can you afford to lose? (Backup frequency.)
- How quickly must you restore service? (Restore speed.)

Best practices for backups and recovery
- Decide RPO and RTO based on business needs and SLAs.
- Automate frequent backups for low RPOs (e.g., continuous or hourly) and ensure consistent snapshots for databases.
- Regularly test restores in an isolated environment and run disaster recovery drills to measure realistic RTO.
- For distributed systems, use coordinated backups or transactional snapshots to avoid inconsistent restores.
- Maintain off-site and immutable backups to protect against accidental deletions and ransomware.
Redundancy answers: “What happens when a machine dies?” Backups answer: “What happens when we make a mistake?” Both are required for a reliable system.
- Ensure LB redundancy (multi-AZ or managed LB).
- Use multi-AZ or multi-region database deployments with tested failover and consistent replication.
- Replicate stateful components and ensure data consistency/replication lag is understood.
- Automate failover and monitoring (health checks, alerting, automated promotion).
- Implement regular, tested backups and maintain clear RPO/RTO targets.
- Practice runbooks and DR drills to validate the recovery process.
- High Availability and Load Balancing concepts
- Database replication and failover patterns
- Backup and restore best practices