• Polly


    概念定义

    Polly是一个弹性的和瞬态故障处理及恢复的类库,允许我们以非常顺畅和线程安全的方式来执诸如行重试,断路,超时,故障恢复等策略,其主要功能如下:

    功能1:重试(Retry)
    功能2:断路器(Circuit-Breaker)
    功能3:超时检测(Timeout)
    功能4:缓存(Cache)   ??TODO
    功能5:降级(Fallback)
    

    适用场景

    • Polly在微服务中 主要用于跨服务调用时加上,Polly虽好不要贪杯啊;
    • Socket服务端升级,那种必须需要重启关闭一会儿,那么让客户端当连接不上的时候再重新连接;报某个连接错误的时候重新连接;
    • 好多地方都可以用,以前没有系统学,只用了一个重试

    弹性策略: 是用于应对瞬态故障,故障发生的瞬间,服务是不可用的;

    重试策略:每隔一段时间重试几次
    断路器策略:熔断器测试 三种状态 OPEN CLOSE Half-OPEN

    主动器策略:
    超时2秒 我就当你故障;
    舱壁隔离:高并发时显示并发数量,比如我这个东西同时只能跑三个,感觉像定义了线程池里面的最大线程数

    缓存:不是频繁更新,减少对服务的访问

    特殊性策略:包装策略 几种策略一起用,执行顺序是从右向左;
    回退和降级(不会单独使用,后背手段)

    回退的现实举例子: 比如你到商场买一个白色衬衫,结果没有白色的了直接给你一个黑色的;

    它有四种状态:

    CircuitState.Closed - 常态,可执行actions。
    CircuitState.Open - 自动控制器已断开电路,不允许执行actions。
    CircuitState.HalfOpen - 在自动断路时间到时,从断开的状态复原。可执行actions,后续的action/s或控制的完成,会让状态转至Open或Closed。
    CircuitState.Isolated - 在电路开路的状态时手动hold住,不允许执行actions。
    

    需要把那些模型跑一遍,自己现在列出来;

    学习地址

    Polly官网地址 当发生了某种故障或者异常后,会用哪种方案处理故障
    其它学习地址

  • 相关阅读:
    8.10日报
    8.9日报
    8.8日报
    8.7日报
    《大道至简》读后感
    8.6日报
    8.5日报
    8.4日报
    8.3日报
    8.2日报
  • 原文地址:https://www.cnblogs.com/maanshancss/p/fc8fca20768841f035ae00a6f1f49b15.html
Copyright © 2020-2023  润新知