随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 是面向分布式服务架构的流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统自适应保护等多个维度来帮助您保障微服务的稳定性。
Hystrix具有以下功能:
Hystrix官方已经停止更新
Sentinel | Hystrix | resilience4j | |
---|---|---|---|
隔离策略 | 信号量隔离(并发线程数限流) | 线程池隔离/信号量隔离 | 信号量隔离 |
熔断降级策略 | 基于响应时间、异常比率、异常数 | 基于异常比率 | 基于异常比率、响应时间 |
实时统计实现 | 滑动窗口(LeapArray) | 滑动窗口(基于 RxJava) | Ring Bit Buffer |
动态规则配置 | 支持多种数据源 | 支持多种数据源 | 有限支持 |
扩展性 | 多个扩展点 | 插件的形式 | 接口的形式 |
基于注解的支持 | 支持 | 支持 | 支持 |
限流 | 基于 QPS,支持基于调用关系的限流 | 有限的支持 | Rate Limiter |
流量整形 | 支持预热模式、匀速器模式、预热排队模式(流量规则处可配置) | 不支持 | 简单的 Rate Limiter 模式 |
系统自适应保护 | 支持 | 不支持 | 不支持 |
控制台 | 提供开箱即用的控制台,可配置规则、查看秒级监控、机器发现等 | 简单的监控查看 | 不提供控制台,可对接其它监控系统 |
下载地址:https://github.com/alibaba/Sentinel/releases
直接下载sentinel-dashboard-1.7.1.jar
java -jar sentinel-dashboard-1.7.1.jar
sentinel默认使用8080端口。访问地址:http://127.0.0.1:8080
用户名/密码:sentinel/sentinel
docker安装
docker pull bladex/sentinel-dashboard
docker run --name sentinel -d -p 8858:8858 -d bladex/sentinel-dashboard
访问地址:http://127.0.0.1:8858
用户名/密码:sentinel/sentinel
以下列举常用的流控规则配置
QPS-直接-快速失败
QPS-关联-快速失败
QPS-直接-排队等待
QPS-直接-Warm Up
降级策略,我们通常用以下几种方式来衡量资源是否处于稳定的状态:
【RT】
【异常比例】
【异常数】
可查询官网说明:https://sentinelguard.io/zh-cn/docs/parameter-flow-control.html
本文地址:https://blog.csdn.net/li521wang/article/details/107337519
如对本文有疑问, 点击进行留言回复!!
before社区电量是什么意思 Before社区电量获得方法
RecycleView入门详解(教你全面掌握RecycleView用法)
动态权限请求框架RxPermissions(几行代码搞定权限)
URL路径@PathVariable出现点号“.“时值遭截断问题
网友评论