On High Availability Systems
| Item / Mechanism | Backups | M/S | MM | 2PC | Paxos |
|---|---|---|---|---|---|
| Consistency | Weak | Eventual | Eventual | Strong | Strong |
| Transactions | No | Full | Local | Full | Full |
| Latency | Low | Low | Low | High | High |
| Throughput | High | High | High | Low | Medium |
| Data loss | Lots | Some | Some | None | None |
| Failover | Down | Read only | Read only | Read/write | Read/write |
This table essentially covers the foundational solutions for high-availability systems today. M/S and MM are not hard to implement, but have many issues. 2PC suffers from poor performance, while Paxos is too complex and difficult to implement.
To summarize the problems of each HA approach:
- For eventual consistency, if a crash occurs, data may not have fully synchronized, leading to inconsistencies.
- For strong consistency, either use the slower XA-style two-phase commit approach, or use the faster but more complex Paxos protocol.
