高并发是大型架构核心,下面我详解高可用保障@mikechen
负载避免单点
首先,负载均衡与流量分发通过将请求分散到多台后端实例。

避免单点过载,提升并发处理能力与容错性。
常见做法:包括使用硬件或软件负载均衡器、DNS 轮询、反向代理(如 Nginx、HAProxy)。
以及,基于四层/七层策略的流量调度。
结合健康检查与会话粘性设置,可进一步提高请求成功率与系统稳定性。
服务限流
核心目标是控制进入系统的请求量,让系统只在自己的“安全水位”内工作。

常见做法:
固定阈值限流:按 QPS、并发数配置阈值(如每秒最多 500 请求),超出直接拒绝或排队。
算法实现:令牌桶、漏桶(如网关限流、中间件限流)。
分层限流:网关层限流、服务层限流、资源层(DB、缓存)限流,逐级保护核心资源。
典型例子:活动高峰期对下单接口限流,多余请求返回“系统繁忙”,保证服务不被打爆。
降级:丢车保帅,保证核心路径
核心目标是在压力过大或下游异常时,主动“关掉/简化”非核心功能,优先保证主链路可用。

常见策略:
功能关闭:临时关闭推荐、排行榜、消息提醒等非关键功能。
简化结果:返回缓存数据、老数据、兜底默认值(如不精准的推荐列表)。
异步/延迟处理:把赠券、积分结算等改为异步批处理,延后执行,减轻实时压力。
手动/自动降级:通过开关配置手动控制,或基于失败率、超时、流量阈值自动触发。
例子:订单创建必须成功,优惠券实时展示可以降级为“稍后到账”,用异步任务夜间批量发券。
熔断:阻断级联故障
熔断关注的是“防扩散”,当某个依赖服务持续失败或超时,就临时切断调用,避免把自己也拖死。

关键点:
错误监控:统计调用失败率、超时比例,超过阈值(如 50% 错误)进入“打开”状态,不再真正调用下游服务。
半开探测:一段时间后允许少量请求探测,如果恢复则关闭熔断,否则继续保持打开。
与降级联动:熔断后直接执行本地 fallback,如返回缓存数据或默认结果,这是典型“熔断 + 降级”模式。
例子:商品服务调用库存服务超时率飙升时,停止调用库存接口。
直接按“库存紧张”策略返回,防止调用线程被长期阻塞导致雪崩。