高可用是大型架构的核心,下面我重点详解高可用架构@mikechen
高可用冗余

冗余是高可用架构的基石。它的核心逻辑很简单:如果一个组件挂了,必须有另一个组件能立刻顶上去。
主备模式 (Active-Standby):
逻辑:一台工作(Master),一台待命(Slave),Master挂了,Slave接管。
应用:数据库的主从复制(MySQL Master-Slave)、Redis Sentinel。
缺点:资源浪费,备机在平时是不干活的。
双活/多活模式 (Active-Active):
逻辑:多台机器同时工作,分担流量。如果一台挂了,流量自动转移到存活的机器。
应用:Nginx负载均衡集群、微服务无状态节点。
难点:数据一致性问题(尤其是跨机房/异地多活时)。
高可用隔离

隔离强调将故障范围限制在最小边界,防止故障蔓延。
隔离手段包括物理隔离(不同机房、机架)、网络隔离(VLAN、子网、ACL)。
务隔离(微服务边界、容器化)与资源隔离(限流、配额、QoS)。
通过合理的分区与限界,能在局部故障时保证整体系统的可用性与可恢复性,同时便于定位与修复问题。
高可用降级

降级是在系统压力过大、或部分依赖挂掉时。
主动牺牲非核心业务,以保住核心业务不崩盘,这是系统的一种“自我保护”机制。
触发场景
流量洪峰:双11零点,流量超过系统承载极限。
依赖故障:下游服务(如推荐系统)挂了,且短时间无法恢复。
响应延迟:某个接口响应时间超过阈值(如3秒)。
降级策略
功能降级:
做法:直接关闭非核心功能。
比如:电商大促时,暂时关闭“退款”、“评论”。
“历史订单查询”入口,只保留“下单”和“支付”功能。