赵成的运维体系管理课
赵成
《进化: 运维技术变革与实践探索》作者
37830 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 49 讲
开篇词 (1讲)
效率和稳定性最佳实践 (20讲)
赵成的运维体系管理课
15
15
1.0x
00:00/00:00
登录|注册

25 | 稳定性实践:开关和预案

缓存技术
功能层面
大促场景案例
开关SDK客户端
HTTP方式推送
微服务配置中心
Spring的AOP和注解技术
Key-Value方式保存
场景化表现
复杂方案执行
业务层面
服务降级
服务限流
开关预案可能遇到的难点
限流降级方案的难点
预案执行
配置变更
开关推送
开关管理
预案
开关
限流降级技术方案
难点
技术解决方案
开关和预案
稳定性保障
可靠性实践

该思维导图由 AI 生成,仅供参考

在稳定性保障中,限流降级的技术方案,是针对服务接口层面的,也就是服务限流和服务降级。这里还有另外一个维度,就是业务维度,所以今天我们就从业务降级的维度来分享,也就是开关和预案

如何理解开关和预案

开关,这个概念更多是业务和功能层面的,主要是针对单个功能的启用和停止进行控制,或者将功能状态在不同版本之间进行切换。
在业务层面,就像我们前面经常提到的大促场景案例,我们会关闭掉很多非核心功能,只保留交易链路的核心功能。比如我们认为商品评论是非核心功能,这时就会通过开关推送这种方案将这个功能关闭。当用户访问商品详情页时,这个接口就不再被调用,从用户角度来说,就是在大促峰值时刻看不到所浏览商品的评论列表。
在功能层面,我们技术架构中会使用缓存技术,但是要考虑到缓存有可能也会出现故障,比如不可访问,或者数据错乱异常等状况,这时我们就会考虑旁路掉缓存,直接将请求转到数据库这一层。
这里有两种做法:一种做法是通过我们上一篇介绍到的降级手段,也就是我们常说的熔断,自动化地旁路;另一种做法,比如在数据异常情况下,请求是正常的,但是数据是有问题的,这时就无法做到自动化旁路,就要通过主动推送开关的方式来实现。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

稳定性保障中的开关和预案是稳定性保障的重要技术方案,主要包括业务层面的开关和预案。开关主要用于控制单个功能的启用和停止,或者在不同版本之间进行切换,而预案则是复杂方案的执行,通过开关、限流和降级策略来实现。在实践中,开关的管理采用Key-Value方式,通过注解技术与代码中的具体字段对应,而预案则通过统一管理和批量操作来提高效率。技术方案并不复杂,主要涉及开关的管理、推送和配置变更,以及预案的执行。在实际应用中,开关和预案的管理对于保障系统稳定性至关重要,但也可能面临一些难点,需要综合考虑和解决。通过本文的介绍,读者可以快速了解稳定性保障中开关和预案的重要性及技术实现方式。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《赵成的运维体系管理课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(4)

  • 最新
  • 精选
  • casper2dd
    随着代码迭代 开关会不会使代码逻辑越来越复杂 各种if else呢
    2018-05-01
    2
    4
  • 小桥流水
    1、开关及预案最初研发是都要考虑清楚 2、这部分应该归属架构部分
    2018-03-14
    2
  • 心随缘
    预案需要结合混沌工程定期演习,防患未然
    2022-06-11
    1
  • 吴澎湖
    没听懂,但是蛮高大上的
    2023-05-30归属地:广东
收起评论
显示
设置
留言
4
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部