Sentinel介绍与使用

一、Sentinel简介

Sentinel是阿里开源的项目,提供了流量控制、熔断降级、系统负载保护等多个维度来保障服务之间的稳定性。
在这里插入图片描述

二:Sentinel 功能和设计理念

流量控制
流量控制在网络传输中是一个常用的概念,它用于调整网络包的发送数据。然而,从系统稳定性角度考虑,在处理请求的速度上,也有非常多的讲究。任意时间到来的请求往往是随机不可控的,而系统的处理能力是有限的。我们需要根据系统的处理能力对流量进行控制。Sentinel 作为一个调配器,可以根据需要把随机的请求调整成合适的形状,如下图所示:
在这里插入图片描述
流量控制有以下几个角度:

资源的调用关系,例如资源的调用链路,资源和资源之间的关系;
运行指标,例如 QPS、线程池、系统负载等;
控制的效果,例如直接限流、冷启动、排队等。
Sentinel 的设计理念是让您自由选择控制的角度,并进行灵活组合,从而达到想要的效果。

熔断降级
什么是熔断降级
除了流量控制以外,降低调用链路中的不稳定资源也是 Sentinel 的使命之一。由于调用关系的复杂性,如果调用链路中的某个资源出现了不稳定,最终会导致请求发生堆积。这个问题和 Hystrix 里面描述的问题是一样的。

Sentinel 和 Hystrix 的原则是一致的: 当调用链路中某个资源出现不稳定,例如,表现为 timeout,异常比例升高的时候,则对这个资源的调用进行限制,并让请求快速失败,避免影响到其它的资源,最终产生雪崩的效果。

熔断降级设计理念
在限制的手段上,Sentinel 和 Hystrix 采取了完全不一样的方法。

Hystrix 通过线程池的方式,来对依赖(在我们的概念中对应资源)进行了隔离。这样做的好处是资源和资源之间做到了最彻底的隔离。缺点是除了增加了线程切换的成本,还需要预先给各个资源做线程池大小的分配。

Sentinel 对这个问题采取了两种手段:

通过并发线程数进行限制
和资源池隔离的方法不同,Sentinel 通过限制资源并发线程的数量,来减少不稳定资源对其它资源的影响。这样不但没有线程切换的损耗,也不需要您预先分配线程池的大小。当某个资源出现不稳定的情况下,例如响应时间变长,对资源的直接影响就是会造成线程数的逐步堆积。当线程数在特定资源上堆积到一定的数量之后,对该资源的新请求就会被拒绝。堆积的线程完成任务后才开始继续接收请求。

通过响应时间对资源进行降级
除了对并发线程数进行控制以外,Sentinel 还可以通过响应时间来快速降级不稳定的资源。当依赖的资源出现响应时间过长后,所有对该资源的访问都会被直接拒绝,直到过了指定的时间窗口之后才重新恢复。

系统负载保护
Sentinel 同时提供系统维度的自适应保护能力。防止雪崩,是系统防护中重要的一环。当系统负载较高的时候,如果还持续让请求进入,可能会导致系统崩溃,无法响应。在集群环境下,网络负载均衡会把本应这台机器承载的流量转发到其它的机器上去。如果这个时候其它的机器也处在一个边缘状态的时候,这个增加的流量就会导致这台机器也崩溃,最后导致整个集群不可用。

针对这个情况,Sentinel 提供了对应的保护机制,让系统的入口流量和系统的负载达到一个平衡,保证系统在能力范围之内处理最多的请求。

Sentinel 是如何工作的
Sentinel 的主要工作机制如下:

对主流框架提供适配或者显示的 API,来定义需要保护的资源,并提供设施对资源进行实时统计和调用链路分析。
根据预设的规则,结合对资源的实时统计信息,对流量进行控制。同时,Sentinel 提供开放的接口,方便您定义及改变规则。
Sentinel 提供实时的监控系统,方便您快速了解目前系统的状态。

三:安装步骤

一:下载jar包
在这里插入图片描述

二:控制台打开jar包所在目录
在这里插入图片描述

三:输入如下命令启动
java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.0.jar在这里插入图片描述

四:sentinel.dashboard就是一个springboot工程,可以看到项目已经在8080端口启
在这里插入图片描述

五:在浏览器中输入url:
localhost:8080后即可进入主页面。
在这里插入图片描述

六:登陆用户名和密码都是sentinel
登陆后可以看到
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/270492.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电脑知识:BIOS和UEFI的对比介绍

❤️作者主页:IT技术分享社区 ❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#、Java开发九年,对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉: 数据库领域优质创作者🏆&#x…

缓存更新的套路

看到好些人在写更新缓存数据代码时,先删除缓存,然后再更新数据库,而后续的操作会把数据再装载的缓存中。然而,这个是逻辑是错误的。试想,两个并发操作,一个是更新操作,另一个是查询操作&#xf…

怎样获取当前页面值php,想要得到当前页面的所有url参数信息怎么用PHP来实现?...

本篇文章主要给大家介绍怎么使用php获取完整url。首先给新手小白们简单介绍下什么是url。百度百科上是这么解说的,统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯…

@PostConstruct注解学习,最详细的分享教程

该注解可以实现在运行工程时,自动运行该注解下的方法; PostConstruct是java自带的注解,指的是在项目启动的时候执行这个方法,也可以理解为在spring容器启动的时候执行,可作为一些数据的常规化加载,比如数据…

电脑知识:分享实用的电脑维护小常识

目录 常识1:杜绝直接拔电脑电源强行关机 常识2:不要用电池玩游戏 常识3:开不了机可以尝试插拔内存条 常识4:电脑散热的处理方法 常识5:避免在电脑工作时拔插头 今天小编就为大家带来一些电脑日常实用中的维护小知识&am…

Sentinel实现黑白名单控制详细教程来了

一:新建一个IpRequestOriginParser类,实现RequestOriginParser接口,配置如下 public class IpRequestOriginParser implements RequestOriginParser {/*** Parse the origin from given HTTP request.** param request HTTP request* return …

D. Anton and Chess 模拟题 + 读题

http://codeforces.com/contest/734/problem/D 一开始的时候看不懂题目,以为象是中国象棋那样走,然后看不懂样例。 原来是走对角线的,长知识了。 所以我们就知道,王有八个方向,所以每个方向选一个来做代表就行了。 那么…

电脑知识:常见电脑蓝屏代码识别与处理方法

电脑蓝屏怎么办? 相信大家都遇到过蓝屏的问题, 有时候电脑用着用着就突然蓝屏了, 或者某天开机突然蓝屏了…… 电脑蓝屏的原因非常的多, 到底是什么引起的呢? 收集了一些最常见的几种蓝屏代码, 大家只需要如…

sentinel的@SentinelResource注解使用

客户自定义限流处理逻辑 创建ExceptionUtil类用于自定义限流处理逻辑 自定义限流处理类: ExceptionUtil 二:新增 SentinelResource注解 配置 SentinelResource(value “hello2”, blockHandler “exHandler”, blockHandlerClass {ExceptionUtil.class}) 通过…

办公技巧:10个WORD神操作,值得收藏

目录 1、F4键 2、Ctrl字母快捷键 3、巧用“文档比较” 4、巧用替换功能 5、特殊字体保存 6、Word表格随心粘 7、去除超链接 8、Word图片轻松移 9、截图 10、格式刷不停 在日常办公当中, Word文档就是我们最常用的软件之一。用它我们写论文、写方案、写小说等等。 但…

MYSQL学习:GROUP BY分组取最新的一条记录

日常开发当中,经常会遇到查询分组数据中最新的一条记录,比如统计当前系统每个人的最新登录记录、外卖系统统计所有买家最新的一次订单记录、图书管理系统借阅者最新借阅书籍的记录等等。今天给大家介绍一下如何实现以上场景的SQL写法,希望对大…

@SentinelResource注解实现热点限流

下图中请求url中param参数为axb,如果QPS超过5,就会限流 一:如下代码 RestController public class ParamController {GetMapping("/param")SentinelResource(value "param", blockHandler "exHandler")p…

硬件知识:固态硬盘4K对齐知识介绍

目录 1、什么是4K对齐呢? 2、怎么查看硬盘是否4K对齐呢? 3、怎么4K对齐呢? 现在大家基本都有一个固态硬盘,而在固态硬盘分区中4K对齐是非常重要的。 1、什么是4K对齐呢? “4K对齐”就是符合“4K扇区”定义格式化过的硬…

【spring cloud】注解@SpringCloudApplication和@SpringBootApplication的区别

SpringCloudApplication注解 注解SpringCloudApplication包括:SpringBootApplication、EnableDiscoveryClient、EnableCircuitBreaker,分别是SpringBoot注解、注册服务中心Eureka注解、断路器注解。对于SpringCloud来说,这是每一微服务必须应…

网络知识:路由器常见故障分析及处理方法

目录 1.路由器的部分功能无法实现 2.网络频繁掉线 3.无法浏览网页 4.某些应用无法使用 5.网络带宽达不到合同带宽或相差甚远 6.局域网内存在多个路由器,因人为原因出现二级路由 对当前的大多数网络来说,无论是实现网络互连还是访问Internet&a…

硬件技巧:如何隐设置的你的电脑U盘不可见

有时候电脑里面有重要内容,在不联网的情况下,还需要禁用U盘,下面介绍禁用U盘的方法,原创文章,转载注明出处即可。 第一步,首先在电脑上点击开始按钮,或者直接按下快捷键组合"WinR"&am…

前端知识:如何创建自己的Iconfont图标库

在日常的开发过程中,前端页面经常会引用一些图标,iconfont图标库是前端开发者非常友好的在线字体图标库。大家可以根据平常所涉及的项目,收藏自己需要的图标库,方便在后续的项目中使用,今天小编给大家介绍如何通过icon…

硬件:固态硬盘SSD的基础知识及安装注意事项

固态硬盘就是用固态电子存储芯片阵列而制成的硬盘,相对于机械硬盘,固态硬盘的读写速度更快,但是固态硬盘的缺点是寿命不如机械硬盘。 固态硬盘有写入寿命,平均起来约为3000次P/E,1P/E为硬盘存储上限,相当于…