时间:2021-05-02
Sentinel简介
Sentinel是阿里开源的项目,定位为面向分布式服务架构的高可用流量控制组件。主要以流量为切入点,从流量控制、熔断降级、系统自适应保护等多个维度来帮助用户保障微服务的稳定性。
Sentinel 介绍
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 应运而生。
Sentinel 开发人员介绍
吃水不忘挖井人,感谢这些大佬
Sentinel 的主要特性
Sentinel 分为两个部分:
资源
资源是 Sentinel 的关键概念。它可以是 Java 应用程序中的任何内容,例如,由应用程序提供的服务,或由应用程序调用的其它应用提供的服务,甚至可以是一段代码。在接下来的文档中,我们都会用资源来描述代码块。
只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下,可以使用方法签名,URL,甚至服务名称作为资源名来标示资源。
规则
围绕资源的实时状态设定的规则,可以包括流量控制规则、熔断降级规则以及系统保护规则。所有规则可以动态实时调整。
Sentinel 功能和设计理念
什么是熔断降级
除了流量控制以外,降低调用链路中的不稳定资源也是 Sentinel 的使命之一。由于调用关系的复杂性,如果调用链路中的某个资源出现了不稳定,最终会导致请求发生堆积。这个问题和 Hystrix 里面描述的问题是一样的。
Sentinel 和 Hystrix 的原则是一致的: 当调用链路中某个资源出现不稳定,例如,表现为 timeout,异常比例升高的时候,则对这个资源的调用进行限制,并让请求快速失败,避免影响到其它的资源,最终产生雪崩的效果。
熔断降级设计理念
在限制的手段上,Sentinel 和 Hystrix 采取了完全不一样的方法。
Hystrix 通过线程池的方式,来对依赖(在我们的概念中对应资源)进行了隔离。这样做的好处是资源和资源之间做到了最彻底的隔离。缺点是除了增加了线程切换的成本,还需要预先给各个资源做线程池大小的分配。
Sentinel 对这个问题采取了两种手段:
和资源池隔离的方法不同,Sentinel 通过限制资源并发线程的数量,来减少不稳定资源对其它资源的影响。这样不但没有线程切换的损耗,也不需要您预先分配线程池的大小。当某个资源出现不稳定的情况下,例如响应时间变长,对资源的直接影响就是会造成线程数的逐步堆积。当线程数在特定资源上堆积到一定的数量之后,对该资源的新请求就会被拒绝。堆积的线程完成任务后才开始继续接收请求。
除了对并发线程数进行控制以外,Sentinel 还可以通过响应时间来快速降级不稳定的资源。当依赖的资源出现响应时间过长后,所有对该资源的访问都会被直接拒绝,直到过了指定的时间窗口之后才重新恢复。
系统负载保护
Sentinel 同时提供系统维度的自适应保护能力。防止雪崩,是系统防护中重要的一环。当系统负载较高的时候,如果还持续让请求进入,可能会导致系统崩溃,无法响应。在集群环境下,网络负载均衡会把本应这台机器承载的流量转发到其它的机器上去。如果这个时候其它的机器也处在一个边缘状态的时候,这个增加的流量就会导致这台机器也崩溃,最后导致整个集群不可用。
针对这个情况,Sentinel 提供了对应的保护机制,让系统的入口流量和系统的负载达到一个平衡,保证系统在能力范围之内处理最多的请求。
Sentinel 是如何工作的
Sentinel 的主要工作机制如下:
Sentinel控制台搭建
1.首先我们需要前往官网下载jar包
https://github.com/alibaba/Sentinel/releases
2.打开jar包所在目录,并且打开命令行窗口
3.启动
注意:启动 Sentinel 控制台需要 JDK 版本为 1.8 及以上版本。
java-Dserver.port=8080-Dcsp.sentinel.dashboard.server=localhost:8080-Dproject.name=sentinel-dashboard-jarsentinel-dashboard-1.8.1.jar
说明
其中 -Dserver.port=8080 用于指定 Sentinel 控制台端口为 8080
如果你已经下载好了其他版本的jar包,请将命令sentinel-dashboard-1.8.1.jar 替换为你的jar包名称
4.sentinel.dashboard就是一个springboot工程,可以看到项目已经在8080端口启动
5.在浏览器中输入url:localhost:8080后即可进入主页面。
6.登录成功以后如下图所示
原文地址:https://mp.weixin.qq.com/s/ndqfaW24jox8k3T9zfQ3Tg
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
第二十章配置ftp服务【什么是FTP】也许你对FTP不陌生,但是你是否了解FTP到底是个什么玩意?FTP是FileTransferProtocol(文件传输协议
2015年除了互联网+以外,“微商”肯定还会继续火热,不光从媒体丶身边朋友,我们真的看到许多的企业也加入进来。正如我此前所讲“微商”到底是个什么玩意,概念之争没
大家好,我是良许。大家知道,在Linux下,一切皆文件,对于设备文件也是如此。我们在工作的过程中,经常会看到/dev/null这个玩意,那它到底是什么呢?专业地
原文主题:淘宝客赚钱靠谱吗?到底是为什么关于说到淘宝客是阿里巴巴旗下的一个平台,根据了解,它还有一个名字,这个名字就是阿里妈妈了,很多的淘宝用户想通过淘宝客盈利
自从百度出品百度卫士后许多人会问“百度卫士和360哪个好”。最近360卫士恶意拦截用户下载百度卫士的新闻频繁出现,到底是什么原因导致一个