跨服务降级

简介: 【8月更文挑战第15天】

降级有熔断非常像,两个关键点

  • 如何判定服务健康,在降级中是判断一个服务要不要降级
  • 降级之后怎么恢复,也是要考虑抖动的问题

在一些场景下,既可以用熔断,也可以用降级。比如响应时间超出阈值之后,可以选择熔断,完全不提供服务;也可以考虑降级,提供有损服务。
原则上来说,应该优先使用降级。但是有些服务无法降级,尤其是写服务。例如你要从前端接收数据,然后写到数据库,这种场景是无法降级的。另外,如果你希望系统负载尽快降低,那么熔断要优于降级

如何降级

  • 跨服务降级:资源不够的时候可以暂停某些服务,将腾出来的资源给其他更加重要、更加核心的服务使用。
  • 本服务提供有损服务:例如APP首页都会有降级策略,在没有触发降级的时候,APP首页是针对个人画像的个性化推荐。而触发降级之后,则可能是使用榜单数据,或是运营提前配置好的静态页面。要点是要知道服务调用者能够接受什么程度的有损

跨服务降级的措施常见的有三个:

  • 整个服务停掉,例如前面提到的停掉退款服务
  • 停掉服务的部分节点
  • 停止访问某些资源。例如日志中心压力很大的时候,发信号给某些不重要的服务,让他们停止上传日志,只在本地保存日志
目录
相关文章
|
消息中间件 存储 SQL
跨系统数据一致性方案的思考(上)
本文主要意在总结沉淀现有问题解决经验过程,整理解决跨系统数据不一致问题的经验方法。 跨系统数据一致性,比较优秀的解决方案就是微服务化,不同应用系统采用统一数据源方式,这样可以有效避免数据一致性问题。 但是我们很多系统由于历史原因或者业务缘由,导致非服务化情况下,又要采取数据一致性方案。
跨系统数据一致性方案的思考(上)
|
SpringCloudAlibaba 监控 Dubbo
SpringCloudAlibaba篇(三)整合Sentinel(限流、流量整形、熔断降级、系统负载保护、热点防护,分布式服务架构的高可用流量防护组件)
SpringCloudAlibaba篇(三)整合Sentinel(限流、流量整形、熔断降级、系统负载保护、热点防护,分布式服务架构的高可用流量防护组件)
SpringCloudAlibaba篇(三)整合Sentinel(限流、流量整形、熔断降级、系统负载保护、热点防护,分布式服务架构的高可用流量防护组件)
|
5月前
|
微服务
微服务多机房部署大揭秘:全局单一实例、全局多实例,一文让你彻底解锁!
【8月更文挑战第25天】本文探讨了微服务架构中的多机房部署策略,包括全局单一与多实例、区域及机房多实例等方法,分析了它们在可用性、容错性、扩展性和成本上的差异。示例展示了如何利用AWS CloudFormation实现跨不同机房的微服务部署。这为实际应用场景提供了有价值的参考和指导。
148 2
|
5月前
|
数据库
跨服务降级
【8月更文挑战第21天】
31 0
|
5月前
|
数据库 缓存 中间件
降级概述
【8月更文挑战第18天】
63 0
|
5月前
|
缓存 NoSQL 关系型数据库
熔断方案
【8月更文挑战第20天】
69 0
|
8月前
|
缓存 Java 应用服务中间件
常见的限流降级方案
【1月更文挑战第21天】
|
缓存 SpringCloudAlibaba 监控
系统之高可用(二):熔断降级
分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务。如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。并且这种不可用可能沿请求调用链向上传递,这种现象被称为级联故障效应,最终结果导致整个系统服务不可用
167 0
|
存储 SpringCloudAlibaba 算法
系统高可用(一):限流
限流是对某一时间窗口内的请求数进行限制,保持系统的可用性和稳定性,防止因流量暴增而导致的系统运行缓慢或宕机
191 0
系统高可用(一):限流

热门文章

最新文章

下一篇
开通oss服务