<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>服务降级 on Leanku 的博客</title><link>https://www.leanku.com/tags/%E6%9C%8D%E5%8A%A1%E9%99%8D%E7%BA%A7/</link><description>Recent content in 服务降级 on Leanku 的博客</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Fri, 11 Jul 2025 20:46:01 +0800</lastBuildDate><atom:link href="https://www.leanku.com/tags/%E6%9C%8D%E5%8A%A1%E9%99%8D%E7%BA%A7/index.xml" rel="self" type="application/rss+xml"/><item><title>高并发系统设计-服务降级</title><link>https://www.leanku.com/post/microservice/%E9%AB%98%E5%B9%B6%E5%8F%91%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1-%E6%9C%8D%E5%8A%A1%E9%99%8D%E7%BA%A7/</link><pubDate>Fri, 11 Jul 2025 20:46:01 +0800</pubDate><guid>https://www.leanku.com/post/microservice/%E9%AB%98%E5%B9%B6%E5%8F%91%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1-%E6%9C%8D%E5%8A%A1%E9%99%8D%E7%BA%A7/</guid><description>&lt;h1 id="高并发系统设计-服务降级"&gt;高并发系统设计-服务降级&lt;/h1&gt;&#10;&lt;h2 id="一概述"&gt;一、概述&lt;/h2&gt;&#10;&lt;h3 id="11-什么是服务降级"&gt;1.1 什么是服务降级&lt;/h3&gt;&#10;&lt;p&gt;服务降级（Fallback）指的是：&lt;/p&gt;&#10;&lt;p&gt;当系统压力过大或依赖服务不可用时，主动返回一个“可接受的替代结果”，而不是让请求失败。&lt;/p&gt;&#10;&lt;p&gt;例如：&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;正常：&#10;→ 查询实时商品详情&#10;&#10;降级：&#10;→ 返回缓存商品详情 / 静态数据&#10;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="12-降级和熔断的区别"&gt;1.2 降级和熔断的区别&lt;/h3&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;项目&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;熔断&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;降级&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;目的&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;防止故障扩散&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;保证可用性&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;触发&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;服务异常&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;系统压力 / 异常&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;行为&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;阻断调用&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;返回替代结果&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;是否对外可用&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;否&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;是&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;熔断 = 不调用&lt;/p&gt;&#10;&lt;p&gt;降级 = 换一种方式返回&lt;/p&gt;&#10;&lt;h3 id="13-为什么需要服务降级"&gt;1.3 为什么需要服务降级&lt;/h3&gt;&#10;&lt;p&gt;在高并发系统中：&lt;/p&gt;&#10;&lt;p&gt;资源永远是有限的。&lt;/p&gt;&#10;&lt;p&gt;例如：&lt;/p&gt;&#10;&lt;p&gt;数据库：1000 QPS,&lt;/p&gt;&#10;&lt;p&gt;实际请求：10000 QPS&lt;/p&gt;&#10;&lt;p&gt;如果不做降级：请求全部打到数据库-》系统崩溃&lt;/p&gt;&#10;&lt;h3 id="14-企业典型应用场景"&gt;1.4 企业典型应用场景&lt;/h3&gt;&#10;&lt;h4 id="场景1商品详情页"&gt;场景1：商品详情页&lt;/h4&gt;&#10;&lt;p&gt;正常：&#10;→ 实时库存 + 价格 + 推荐&lt;/p&gt;&#10;&lt;p&gt;降级：&#10;→ 缓存商品 + 默认库存&lt;/p&gt;&#10;&lt;h4 id="场景2推荐系统"&gt;场景2：推荐系统&lt;/h4&gt;&#10;&lt;p&gt;推荐服务挂了&lt;/p&gt;&#10;&lt;p&gt;→ 返回热门商品&lt;/p&gt;&#10;&lt;h4 id="场景3搜索系统"&gt;场景3：搜索系统&lt;/h4&gt;&#10;&lt;p&gt;ES不可用&lt;/p&gt;</description></item></channel></rss>