赞
踩
Spring Cloud Alibaba Sentinel(以下简称 Sentinel)是一个开源的流量控制和熔断框架,它是 Alibaba 开源的微服务框架Spring Cloud Alibaba 中的一个组件。Sentinel 旨在解决分布式系统中的流量控制和熔断问题,帮助开发人员保护微服务应用免受系统负载过高和故障的影响。
需要使用 Sentinel 的原因主要有以下几个!
流量控制是指对系统中的请求流量进行限制和管理,以确保系统在承受能力范围内正常运行。
常见的流量控制算法有令牌桶算法(Token Bucket)和漏桶算法(Leaky Bucket)。这两种算法都可以用来平滑流量并控制数据包的传输速率,防止突发流量对系统造成影响。
举例说明:
假设一个令牌桶算法的令牌桶容量为100个令牌,每秒往桶中放入10个令牌,即系统的传输速率为10个数据包/秒。当一个数据包到达时,需要从令牌桶中取出一个令牌,如果桶中有足够的令牌,则可以传输数据包;如果桶中没有足够的令牌,则需要等待,直到桶中有足够的令牌为止。
举例说明:
假设一个漏桶算法的漏桶容量为100个数据包,漏桶的漏出速率为10个数据包/秒,即系统的传输速率为10个数据包/秒。当一个数据包到达时,如果漏桶未满,则可以传输数据包;如果漏桶已满,则需要等待,直到有空间为止。
这两种算法在实际应用中都可以有效地控制流量,保护系统免受突发流量的影响。在选择算法时,可以根据具体的需求和场景来决定使用哪种算法。
Sentinel 流量控制有以下几个角度:
Sentinel 的设计理念是让您自由选择控制的角度,并进行灵活组合,从而达到想要的效果。Sentinel 限流配置:
熔断是一种在分布式系统中处理故障和异常的策略。当某个服务或者接口发生故障或异常时,熔断机制会迅速将请求拒绝或者返回错误信息,而不是让请求一直等待或者重试,以保护系统免受故障的扩散影响。
熔断的原理是通过对服务的监控和评估,根据一定的规则来判断服务的健康状况。当服务的错误率或者响应时间超过设定的阈值时,熔断器会触发,并将后续的请求迅速拦截或者返回错误信息,而不是继续调用该服务,从而避免由于故障服务的长时间不可用或者响应过慢而导致整个系统的延迟或者崩溃。
熔断机制的好处是能够快速失败并返回错误信息,避免资源的浪费和系统的连锁故障。当服务恢复正常时,熔断器会逐渐放行请求,验证服务的可用性,确保系统逐渐恢复正常运行。
Sentinel是阿里巴巴开源的一款面向分布式服务架构的高可用流量控制组件,它提供了流量控制、熔断降级、系统负载保护等功能。在Sentinel中,熔断是一种重要的流量控制策略,用于保护系统免受异常流量的影响。以下是几种常见的Sentinel熔断策略:
基于异常比例的熔断策略:
这种策略会根据请求的异常比例来触发熔断。当系统中某个接口的异常比例超过设定的阈值时,Sentinel会触发熔断,暂时停止对该接口的请求处理,以避免异常请求继续对系统造成影响。在熔断打开后,Sentinel会定时尝试关闭熔断,恢复对该接口的请求处理。
基于平均响应时间的熔断策略:
这种策略会根据接口的平均响应时间来触发熔断。当系统中某个接口的平均响应时间超过设定的阈值时,Sentinel会触发熔断,暂时停止对该接口的请求处理,以避免响应时间过长影响系统的整体性能。在熔断打开后,Sentinel会定时尝试关闭熔断,恢复对该接口的请求处理。
基于并发线程数的熔断策略:
这种策略会根据接口的并发线程数来触发熔断。当系统中某个接口的并发线程数超过设定的阈值时,Sentinel会触发熔断,暂时停止对该接口的请求处理,以避免过多的并发请求导致系统负载过高。在熔断打开后,Sentinel会定时尝试关闭熔断,恢复对该接口的请求处理。
这些熔断策略可以根据具体的业务需求和系统特点进行配置和调整,帮助系统在面对异常流量时保持稳定和可靠。在实际应用中,可以根据系统的情况选择合适的熔断策略,并通过监控和调优来保证系统的高可用性和稳定性。
Sentine| 中有两个重要的组件:资源和规则。
Sentinel 基本使用主要分为以下 4 步:
@SentinelResource 注解详解
@SentinelResource 注解属性说明:
通过代码定义资源
可以通过代码的的方式 SphU.entry("resourceName”)来定义资源,具体实现代码如下:
SphU 是 Sentinel Protection Hotspot Util 的缩写,Sentinel 热点保护工具类。
通过注解 @SentinelResource 也可以实现资源的定义,如下代码所示:
注:1.6.0 之前的版本 falback 函数只针对熔断降级异常(DegradeException)进行处理,不能针对业务异常进行处理。
Sentinel 控制台包含如下功能:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。