地板网站模板免费下载,深圳网站设计三把火,深圳专业网站设计怎么做,移动端是什么Sentinel是阿里巴巴开源的一款服务保护框架#xff0c;目前已经加入SpringCloudAlibaba中。官方网站#xff1a;
home | Sentinel Sentinel 的使用可以分为两个部分:
核心库#xff08;Jar包#xff09;#xff1a;不依赖任何框架/库#xff0c;能够运行于 Java 8 及以…Sentinel是阿里巴巴开源的一款服务保护框架目前已经加入SpringCloudAlibaba中。官方网站
home | Sentinel Sentinel 的使用可以分为两个部分:
核心库Jar包不依赖任何框架/库能够运行于 Java 8 及以上的版本的运行时环境同时对 Dubbo / Spring Cloud 等框架也有较好的支持。在项目中引入依赖即可实现服务限流、隔离、熔断等功能。控制台DashboardDashboard 主要负责管理推送规则、监控、管理机器信息等。
搭建控制台
1下载jar包
下载地址https://github.com/alibaba/Sentinel/releases、
2运行将jar包放在任意非中文、不包含特殊字符的目录下重命名为
sentinel-dashboard.jar
然后运行如下命令启动控制台
java -Dserver.port8090 -Dcsp.sentinel.dashboard.serverlocalhost:8090 -Dproject.namesentinel-dashboard -jar sentinel-dashboard.jar
如果本地jdk版本为17请使用下面的cmd指令
java -Dserver.port8090 -Dcsp.sentinel.dashboard.serverlocalhost:8090 -Dproject.namesentinel-dashboard -jar .\sentinel-dashboard-1.8.8.jar
指令最后的参数为jar包的名称修改为你实的ar包的名称
3访问
访问http://localhost:8090页面就可以看到sentinel的控制台了 需要输入账号和密码默认都是sentinel
登录后即可看到控制台默认会监控sentinel-dashboard服务本身 项目监控:
总结
Sentinel默认是监控每个http接口路径但我们的功能有相同路径不同请求方式
只是监控请求路径无法看到每个功能的详情所以开启了Sentinel的请求方式前缀把每个接口都监控了
步骤
1引入sentinel依赖
!--sentinel--
dependencygroupIdcom.alibaba.cloud/groupId artifactIdspring-cloud-starter-alibaba-sentinel/artifactId
/dependency!-- 如果报错请添加以下依赖尝试解决 --
dependencygroupIdorg.hibernate.validator/groupIdartifactIdhibernate-validator/artifactIdversion6.2.0.Final/version !-- 请检查是否有更新的版本 --
/dependency2配置控制台
修改application.yaml文件添加下面内容
spring:cloud: sentinel:transport:dashboard: localhost:8090 #Sentinel的服务地址
3访问控制台
打开sentinel-dashboard控制台。并展示出统计信息 到这里我们已经完成了项目的流量监控
簇点链路
点击簇点链路菜单会看到下面的页面 所谓簇点链路就是单机调用链路是一次请求进入服务后经过的每一个被
Sentinel监控的资源。默认情况下Sentinel会监控SpringMVC的每一个Endpointhttp接口。
我们看到/carts这个接口路径就是其中一个簇点我们可以对其进行限流、熔断、隔离等保护措施。
默认情况下Sentinel会把路径作为簇点资源的名称无法区分路径相同但请求方式不同的接口查询、删除、修改等都被识别为一个簇点资源无法区分路径相同但请求方式不同的接口查询、删除、修改等都被识别为一个簇点资源这显然是不合适的。
所以我们可以选择打开Sentinel的请求方式前缀把请求方式 请求路径作为簇点资源名
打开Sentinel的请求方式前缀
spring:cloud:sentinel:transport:dashboard: localhost:8090http-method-specify: true # 开启请求方式前缀
服务熔断
熔断是解决雪崩问题的重要手段。思路是由断路器统计服务调用的异常比例、慢请求比例如果超出阈值则会熔断该服务。即拦截访问该服务的一切请求而当服务恢复时断路器会放行访问该服务的请求
Sentinel中的断路器不仅可以统计某个接口的慢请求比例还可以统计异常请求比例。当这些比例超出阈值时就会熔断该接口即拦截访问该接口的一切请求降级处理当该接口恢复正常时再放行对于该接口的请求。
断路器的工作状态切换有一个状态机来控制 状态机包括三个状态
closed关闭状态断路器放行所有请求并开始统计异常比例、慢请求比例。超过阈值则切换到open状态open打开状态服务调用被熔断访问被熔断服务的请求会被拒绝快速失败直接走降级逻辑。Open状态持续一段时间后会进入half-open状态half-open半开状态放行一次请求根据执行结果来判断接下来的操作。 请求成功则切换到closed状态请求失败则切换到open状态
我们可以在控制台通过点击簇点后的熔断按钮来配置熔断策略 在弹出的表格中这样填写 这种是按照慢调用比例来做熔断上述配置的含义是
RT超过200毫秒的请求调用就是慢调用统计最近1000ms内的最少5次请求如果慢调用比例不低于0.5则触发熔断熔断持续时长20s
该框架还包含更多的服务保护功能详细学习请前往home | Sentinel