is a design pattern that aims to improve the availability, scalability, and performance of distributed systems.
- There are a set of active servers to handle the incoming requests.
- A set of passive servers acting as backups or replica servers.
- If the system has a database:
The active partition can replicate, in near real-time, the transactions.
The active partition can use backup and restore strategies (check the RTO and RPO).
- A Load Balancer decides who’s acting as active servers.
- Pros: The failover solution is not expensive.
- Pros: Incrementing the active servers without incrementing the passive servers.
- Cons: The passive servers are only used in case of a disaster event (wasting).
- Cons: Single point of failure
- Cons: Monitor the replication of data from active to passive servers.