流量的治理

62 篇文章 1 订阅
62 篇文章 1 订阅

       容错性设计是微服务的另一个核心原则。随着拆分出的服务越来越多,随之而来会面临以下2个问题:
      1.由于某一个服务崩溃,导致所有用到这个服务的其他服务都无法正常工作,一个点的错误经过层层传递,最终波及调用链上与此有关的所有服务,这便是
雪崩效应。如何防止雪崩效应便是微服务架构容错性设计的具体实践,否则服务化程度越高,整个系统反而越不稳定。
     2.服务虽然没有崩溃,但由于处理能力有限,面临超过预期的突发的请求时,大部分请求直到超时都无法完成处理。类似于交通阻塞,如果一开始没有得到及时的
处理,后面就需要很长时间方案使得全部服务都恢复正常。
这里我们就要用到一些容错策略:故障转移、快速失败、安全失败、沉默失败、故障恢复、并行调用、广播调用。
       容错设计模式,如微服务中常见的 断路器模式、舱壁隔离模式、重试模式,等等;以及流量控制模式,如滑动时间窗口、漏桶模式、令牌桶模式,等等。
       流量控制:任何一个系统的运算、存储、网络资源都不是无限的,当系统资源不足以支撑超过预期的突发流量时,便应该有所取舍,建立面对超额流量自我保护的机制,这个机制就是“限流”。
限流的常用设计模式有流量计数器模式、滑动时间窗模式、漏桶模式、令牌桶模式。这些限流算法和模式全部是针对整个系统的限流。
      落实到分布式中,一种常见的简单分布式限流方法是将所有服务的统计结果都存到集中式缓存中(如redis),以实现在集群内的共享,并可以通过分布式锁、信号量等机制,解决这些数据读写访问时并发控制问题。

***********************************************************************

【如果文字看累了,可b站搜索“沙皮狗2021”,用听的方式领略知识的魅力】

   传送门 :https://space.bilibili.com/407643589

***********************************************************************
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蜗牛慢慢向上爬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值