我是靠谱客的博主 迷你蜻蜓,最近开发中收集的这篇文章主要介绍Sentinel(一)概念和功能 基本概念 重要功能: ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

基本概念

资源

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

规则

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

重要功能:

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

流量控制

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

熔断降级

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

两种处理手段

通过并发线程进行限制

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

通过响应时间对资源降级

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

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

系统负载保护

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

最后

以上就是迷你蜻蜓为你收集整理的Sentinel(一)概念和功能 基本概念 重要功能: 的全部内容,希望文章能够帮你解决Sentinel(一)概念和功能 基本概念 重要功能: 所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部