高可用是大型架构的核心,下面我重点详解高可用架构@mikechen
高可用冗余
冗余,是高可用架构的第一道防线。

其本质:是在关键组件或路径上建立多份备份,消除单点故障(Single Point of Failure)。
冗余实现的层面多样,包括但不限于硬件冗余(双电源、RAID、双机热备)。
以及,网络冗余(多链路、多出口)、计算冗余(多副本服务、负载均衡)、数据冗余(主从复制、多活部署)等。
合理设计冗余需关注一致性、与切换流程。
例如,数据库主从复制在保证可用性的同时需要,考虑数据延迟、和读写一致性。
多活部署要求会话管理与状态同步机制到位。
冗余并非简单地“多一台机器就万无一失”,而是需要搭配健康检查、自动故障转移、透明切换和故障恢复策略。
确保备份资源能在主资源失效时快速、可靠地承担工作负载。
高可用隔离
隔离的核心逻辑是:故障隔离。

当系统中某个部分坏掉时,不能像多米诺骨牌一样引发全线崩溃。
隔离可在,多个维度实现,比如:
- 进程或服务级隔离(微服务化、容器化);
- 资源级隔离(CPU、内存、IO 限额、独立队列);
- 网络级隔离(子网划分、VPC、ACL)、故障域划分(可用区/机房分布)等。
此外,采用熔断器、限流、滑动窗口等保护机制。
能够主动切断或缓解出现异常的服务,从而保护整体系统稳定性。
隔离与冗余配合,可以在故障发生时既有备份可用,又确保影响范围被限制在可控的“故障域”之内。
高可用降级
当压力超过系统的承受极限,或者下游依赖出现故障时,我们要有策略地牺牲局部,保全大局。

常见的降级手段,包括:
静态、或动态关闭次要功能(如个性化推荐、日志收集、批量统计);
降级到缓存数据、或近似结果;
限制并发或降低服务质量(例如降低图像分辨率、延长超时时间);
典型的案例:
双11高峰:关闭商品评价、成交记录展示、个性化推荐,释放资源保障下单支付。
外卖平台:地图服务超时,返回“附近热门”而非精准定位。
视频网站:推荐系统故障,返回热门榜单。
mikechen睿哥
10年+一线大厂架构实战经验,就职于阿里、淘宝等一线大厂,操盘多个亿级大厂核心项目。