运维服务降级新玩法

运维开关(Ops Toggles)是特性管理(Feature Management)的核心应用场景之一。这类开关通常从运维的角度管控系统功能,比如当我们上线的新功能出现问题或某个依赖服务出现故障时,运维或研发人员可以禁用功能或服务降级,来减少故障对系统整体的影响。本文将介绍如何使用 FeatureProbe 实现手动降级开关和自动降级开关。

一、什么是降级开关 ?

服务降级作为服务容错的常用方式之一,其思想是牺牲系统中非核心功能或服务来保证系统整体可用性。常用的服务降级方式有熔断降级限流降级以及开关降级 ,这些不同的降级方式分别应对不同的故障场景。

关于熔断降级和限流降级方式不展开介绍,这里的开关降级指的是在代码中预先埋设一些开关,并实时获取开关的状态来控制服务的行为。比如,开关开启的时候访问下游服务获取实时数据,当依赖的下游服务出现故障时,立即关闭开关来访问旧的缓存数据或默认值;再比如,在电商大促期间为了保障核心服务用到的计算资源,通过开关来关闭非核心服务。

下面是利用开关执行降级逻辑的代码示例:

// 获取降级开关返回值
degradeRpcService := fpClient.BoolValue("degrade_rpc_service", false)
if degradeRpcService {
  // 执行降级逻辑, 如从缓存中获取旧数据} else {
  // 调用正常逻辑,如从远程服务获取实时数据
}

其中 degrade_rpc_service 就是一个典型的降级开关。

二、如何实现手动降级开关?

实现降

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值