高并发系统设计-服务降级
高并发系统设计-服务降级 一、概述 1.1 什么是服务降级 服务降级(Fallback)指的是: 当系统压力过大或依赖服务不可用时,主动返回一个“可接受的替代结果”,而不是让请求失败。 例如: 正常: → 查询实时商品详情 降级: → 返回缓存商品详情 / 静态数据 1.2 降级和熔断的区别 项目 熔断 降级 目的 防止故障扩散 保证可用性 触发 服务异常 系统压力 / 异常 行为 阻断调用 返回替代结果 是否对外可用 否 是 熔断 = 不调用 降级 = 换一种方式返回 1.3 为什么需要服务降级 在高并发系统中: 资源永远是有限的。 例如: 数据库:1000 QPS, 实际请求:10000 QPS 如果不做降级:请求全部打到数据库-》系统崩溃 1.4 企业典型应用场景 场景1:商品详情页 正常: → 实时库存 + 价格 + 推荐 降级: → 缓存商品 + 默认库存 场景2:推荐系统 推荐服务挂了 → 返回热门商品 场景3:搜索系统 ES不可用...