Sentinel(一)概念和功能

基本概念

资源

资源是Sentinel的要保护的内容。它可以是Java程序中的任何内容,可以是一个服务,一个方法,甚至可以是一段代码。

规则

作用在资源之上,定义以什么方式保护资源,就是规则,主要包括流量控制规则、熔断降级规则、系统保护规则等。

重要功能:

主要功能就是容错,主要体系三个方面

流量控制

流量控制在网络传输中是一个常用的概念,它用于调整网络包的数据。任意时间到来的请求是不可控的,而系统的处理能力是有限的。我们需要根据系统的处理能力对流量进行控制。Sentinel作为一个调配器,可以根据需要吧随机的请求调整成合适的形状。

熔断降级

当检测到调用链路中某个资源出现不稳定的表现,比如请求响应超时或一场比例升高时,则对这个资源调用进行限制,让调用快速识别。

两种处理手段

通过并发线程进行限制

Sentinel通过限制资源并发数量,来减少不稳定资源对其他资源的影响。当某个资源出现不稳定的情况时,如响应超时,对资源的直接影响就是造成线程堆积。当线程数在特定资源上堆积到阈值时,对该资源新的请求就是被拒绝。堆积的线程完成任务释放后才开始继续工作。

通过响应时间对资源降级

当依赖的资源出现响应过长时,所有对该资源的访问都会被直接拒绝,知道过了指定的时间阈值后才重新恢复。

Sentinel和Hystrix的区别 两则原则上是一致的,采取了完全不一样的方法 >Sentinel采取上诉的两种方法 通过并发线程数量和响应时间对资源进行限制 >Hystrix采用线程池隔离。优点是做到了资源间的隔离,缺点增加了线程切换的成本。

系统负载保护

当系统负载过高时,如果还继续让请求进入可能会导致系统奔溃无法响应。在集群环境下,会把本应该这台机器承载的流量转发到其他负载过低的机器上。如果这个时候,其他机器也处在边缘状态时,Sentinel提供了对应的保护机制,让系统入口流量和系统负载达到一个平衡,保证在系统能力范围之内处理更多的请求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值