高可用架构三板斧:冗余、隔离、降级

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

高可用冗余

冗余,是高可用架构的第一道防线。

高可用架构三板斧:冗余、隔离、降级-mikechen

其本质:是在关键组件或路径上建立多份备份,消除单点故障(Single Point of Failure)。

冗余实现的层面多样,包括但不限于硬件冗余(双电源、RAID、双机热备)。

以及,网络冗余(多链路、多出口)、计算冗余(多副本服务、负载均衡)、数据冗余(主从复制、多活部署)等。

合理设计冗余需关注一致性、与切换流程。

例如,数据库主从复制在保证可用性的同时需要,考虑数据延迟、和读写一致性。

多活部署要求会话管理与状态同步机制到位。

冗余并非简单地“多一台机器就万无一失”,而是需要搭配健康检查、自动故障转移、透明切换和故障恢复策略。

确保备份资源能在主资源失效时快速、可靠地承担工作负载。

 

高可用隔离

隔离的核心逻辑是:故障隔离。

高可用架构三板斧:冗余、隔离、降级-mikechen

当系统中某个部分坏掉时,不能像多米诺骨牌一样引发全线崩溃。

隔离可在,多个维度实现,比如:

  • 进程或服务级隔离(微服务化、容器化);
  • 资源级隔离(CPU、内存、IO 限额、独立队列);
  • 网络级隔离(子网划分、VPC、ACL)、故障域划分(可用区/机房分布)等。

此外,采用熔断器、限流、滑动窗口等保护机制。

能够主动切断或缓解出现异常的服务,从而保护整体系统稳定性。

隔离与冗余配合,可以在故障发生时既有备份可用,又确保影响范围被限制在可控的“故障域”之内。

 

高可用降级

当压力超过系统的承受极限,或者下游依赖出现故障时,我们要有策略地牺牲局部,保全大局。

高可用架构三板斧:冗余、隔离、降级-mikechen

常见的降级手段,包括:

静态、或动态关闭次要功能(如个性化推荐、日志收集、批量统计);

降级到缓存数据、或近似结果;

限制并发或降低服务质量(例如降低图像分辨率、延长超时时间);

典型的案例:

双11高峰:关闭商品评价、成交记录展示、个性化推荐,释放资源保障下单支付。

外卖平台:地图服务超时,返回“附近热门”而非精准定位。

视频网站:推荐系统故障,返回热门榜单。

mikechen睿哥

10年+一线大厂架构实战经验,就职于阿里、淘宝等一线大厂,操盘多个亿级大厂核心项目。

评论交流
    说说你的看法