码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2020-05-04 15:10:05      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:nbsp   font   控制   流量   返回   脚本   inf   res   pre   

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是由阿里巴巴开发的熔断保护组件,支持灵活的配置规则(例如限流规则,熔断规则)

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

标签:nbsp   font   控制   流量   返回   脚本   inf   res   pre   

原文地址:https://www.cnblogs.com/masting/p/12826413.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!