可用性 (Availability) 是指系统在面对各种异常(如硬件故障、网络抖动、流量激增)时,仍能持续对外提供服务并给出正确响应的能力。
在 CAP 定理中,可用性的定义是:非故障节点在合理的时间内返回合理的响应(不是错误或超时)。
提高可用性的常见手段
为了实现高可用性 (High Availability, HA),通常会采用以下技术:
- 冗余 (Redundancy):通过增加备份节点,避免单点故障。
- 故障转移 (Failover):当主节点失效时,自动切换到备用节点。
- 负载均衡 (Load Balancing):将请求分发到多个节点,防止单个节点过载。
- 限流与熔断:在系统压力过大时保护核心服务。
- 多活架构 (Multi-Active):在多个数据中心同时提供服务。