• 微服务-SpringCloud学习系列(五): 熔断保护Sentinel


    Sentinel支持信号量隔离(不支持线程池隔离),多种熔断降级策略,支持QPS流量控制。Sentinel是Hystrix的替代方案。

    Sentinel的核心概念:资源,规则,检验规则是否生效。

    1.Sentinel的使用

    ①安装管理控制台(去官网下载对应的jar包,注意启动脚本中jar的版本)

     ②将所有微服务交给控制台管理

    在微服务中引入依赖和增加配置(这里注意Sentinel是懒加载,在接收到请求之后才能在控制台看到数据,也可以在控制台配置各种规则)

    ③对服务的熔断保护

     ④Sentinel的简单原理

     2.Sentinel的本地配置(因为控制台的配置是在内存中存储的,重启之后就会失效)

    配置项

    本地限流规则配置:

     

     3.Sentinel对Template调用的全局熔断保护

    在RestTemplate的Bean上增加@SentinelRestTemplate注解并配置熔断降级的类和方法或者异常降级的类和方法

     这里注意降级方法的中返回值SentinelClientHttpResponse中需要的设置成对应返回值的JSON字符串,否则会发生JSON解析异常。

     4.Sentinel对Feign的全局降级配置

    ①引入依赖

     ②配置开启Sentinel支持

     ③编写降级类

    和Hystrix对Feign的熔断降级类似,配置完成后可以在控制台配置规则。

     5.总结

    Sentinel是由阿里巴巴开发的熔断保护组件,支持灵活的配置规则(例如限流规则,熔断规则)

  • 相关阅读:
    【BZOJ 3732】 Network
    【BJOI 2018】 求和
    【HDU 1005】 Number Sequence
    【HDU 3652】 B-numbers
    【SCOI 2007】 降雨量
    BZOJ2186 SDOI2008沙拉公主的困惑(数论)
    #38 游戏(线段树)
    BZOJ2339 HNOI2011卡农(动态规划+组合数学)
    BZOJ3107 CQOI2013二进制A+B(动态规划)
    BZOJ3083 遥远的国度(树链剖分+线段树)
  • 原文地址:https://www.cnblogs.com/masting/p/12826413.html
Copyright © 2020-2023  润新知