【sentinel流量卫兵配置持久化到Nacos】

sentinel流量卫兵配置持久化到Nacos

    • 概述:
  • 一、添加配置
  • 二、配置说明
      • 限流规则配置:
      • 降级规则配置:
      • 热点规则配置:
      • 授权规则配置:
      • 系统规则配置:
  • 三、服务整合

概述:

控制台配置的参数,默认持久化到内存的,因此服务一旦重新启动后,配置就会丢失,需要重新配置。各位可以在默认情况下随意配置一个,然后重启服务即可验证。
这里持久化通过nacos配置中心进行。

一、添加配置

既然是通过nacos进行持久化,那么首先要做的就是将配置准备好写到nacos,这里配置的是熔断降级规则,如下:
nacos配置中心
配置详情

二、配置说明

resource:资源名(唯一名称,默认请求路径),对应sentinel控制台的(参考下图箭头)
count:熔断策略为慢调用比例:最大Rt(需要设置的阈值,超过该值则为慢应用),异常比例中为:比例阈值,异常数中为:异常数
grade:熔断策略(0:慢调用比例,1:异常比例,2:异常数)
slowRatioThreshold:比例阈值 (慢调用占所有的调用比率,范围[0~1])
timeWindow:熔断时长(在这段时间内发生熔断,拒绝所有请求)

在这里插入图片描述
DegradeRule,NacosDataSourceProperties源码,其它类型规则参考如下表格

限流规则配置:

属性说明
app应用名
resource资源名(唯一名称,默认请求路径)
limitApp针对来源 (Sentinel可以针对调用者进行限流,填写微服务名,指定对哪个微服务进行限流 ,默认default(不区分来源,全部限制))
grade阈值类型(阀值类型,0:线程数,1:QPS)
count单机阀值
clusterMode是否集群(false:否,true:是)
controlBehavior流控效果 (0:失败,1:warmUp,2:排队等待)
strategy流控模式(0:直接,1:关联,2:链路)
clusterConfigthresholdType: 0

降级规则配置:

属性说明
app应用名
count熔断策略为慢调用比例:最大Rt(需要设置的阈值,超过该值则为慢应用),异常比例中为:比例阈值,异常数中为:异常数
limitApp针对来源 (Sentinel可以针对调用者进行限流,填写微服务名,指定对哪个微服务进行限流 ,默认default(不区分来源,全部限制))
grade熔断策略(0:慢调用比例,1:异常比例,2:异常数)
minRequestAmount最小请求数(允许通过的最小请求数,在该数量内不发生熔断)
timeWindow熔断时长(在这段时间内发生熔断,拒绝所有请求)
slowRatioThreshold比例阈值 (慢调用占所有的调用比率,范围[0~1])
resource资源名(唯一名称,默认请求路径)
statIntervalMs熔断时长(熔断时长,默认为1秒)

热点规则配置:

属性说明
app应用名
resource资源名(唯一名称,默认请求路径)
limitApp针对来源 (Sentinel可以针对调用者进行限流,填写微服务名,指定对哪个微服务进行限流 ,默认default(不区分来源,全部限制))
grade限流模式(0:线程数,1:QPS)
count单机阀值
durationInSec统计窗口时间
clusterMode是否集群(false:否,true:是)
paramIdx参数索引
paramFlowItemList参数例外项,可以针对指定的参数值单独设置限流阈值,不受前面 count 阈值的限制。仅支持基本类型
controlBehavior流控效果,默认为0 (0:快速失败,1:warmUp,2:排队等待)
maxQueueingTimeMs最大排队等待时长,默认0(仅在匀速排队模式生效)

授权规则配置:

属性说明
app应用名
resource资源名
limitApp流控应用(指调用方,多个调用方名称用半角英文逗号(,)分隔)
strategy授权类型(0:白名单,1:黑名单)

系统规则配置:

属性说明
app应用名
highestSystemLoad阈值(阈值类型为Load的阈值)[0,1)的正整数
avgRt阈值(阈值类型为RT的阈值)所有入口流量的平均响应时间,[0,1)的正整数
maxThread阈值(阈值类型为线程数的阈值)入口流量的最大并发数,[0,1)的正整数
qps阈值 (阈值类型为入口 QPS的阈值)所有入口资源的 QPS,[0,1)的正整数
highestCpuUsage阈值(阈值类型为CPU 使用率的阈值)[0,1]的小数,代表百分比

三、服务整合

1、服务导入依赖

<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-datasource-nacos</artifactId>
</dependency>

注意版本问题,这里没有显示的指定版本,是因为在微服务顶级pom文件统一定义了

2、服务添加配置
在这里插入图片描述
3、发起验证
对配置的接口发起请求,查看控制台熔断规则(具体配置什么规则就查看什么规则)。然后重启服务再次发起,规则依然有效。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024/2/4学习记录

微信小程序 网络数据请求 出于安全性方面的考虑&#xff0c;小程序官方对数据接口得请求做出了俩个限制 只能对 https 类型的接口必须将接口的域名添加到信任列表中 需要去这里设置 域名只支持 https 协议域名不能使用 ip 地址 或者localhost域名必须经过 ICP 备案 服务器域…

【C++】基础语法:深浅拷贝

前言 在学习拷贝构造函数的时候遇到了深浅拷贝这个知识点 就写篇文章记录一下 &#xff08;引用的部分不用太在意 是查的 &#xff08;需要前提知识&#xff1a;知道默认拷贝构造函数是什么 知道默认拷贝构造函数和构造函数的关系、知道析构函数的写法和用处 浅拷贝 浅拷贝&…

周报(20240204)

日期&#xff1a;2024.1.29 - 2024.2.4 本周工作&#xff1a; 1. 阅读论文 本周主要对这篇文献进行了阅读&#xff1a; 《用可学习的跳跃连接缩小U-Net中的语义差距&#xff1a;以医学图像分割为例》 背景 医学图像分割和随后对目标对象的定量评估为疾病诊断和治疗规划提…

在Vue中如何动态绑定class和style属性

在Vue中&#xff0c;动态绑定class和style属性是我们经常遇到的需求。这个功能允许我们根据不同的条件来动态改变元素的样式&#xff0c;让我们的应用更加灵活和富有交互性。在本篇博客文章中&#xff0c;我将带你深入探索在Vue中如何实现这一功能。 首先&#xff0c;让我们了…

c++中使用ifstream对文件按照行间隔或者符号间隔来读取

简单的文本存取与读取在的程序中是比较常见的&#xff0c;一般为了读取的时候便于区分数据&#xff0c;我们常常会用空格或者空行来隔开数据字段&#xff0c;所以对于读取文件的操作我们肯定会有些具体的需求比如按照行读取或者按照词来读取&#xff08;或者说是以空格来间隔数…

函数调用栈是什么

今天在力扣leetbook上看《图解算法数据结构》中的空间复杂度这一小节&#xff0c;看到如下这句话&#xff1a; “程序调用函数是基于栈实现的&#xff0c;函数在调用期间&#xff0c;占用常量大小的栈帧空间&#xff0c;直至返回后释放。” 这句话的意思是&#xff0c;在程序中…

SQL必知必会笔记(13~16章)

第十三章 创建高级联结 1、别名&#xff1a;缩短SQL语句&#xff0c;允许在一条Select语句中多次使用相同的表 SELECT A.Name, A.Maths, A.English FROM transcript AS A INNER JOIN student_id As B ON A.Name B.Name; 2、Oracle数据库中没有AS关键字&#xff0c;直接在表名或…

【计算机学院寒假社会实践】——服务走进社区,共绘幸福蓝图

为深入贯彻落实志愿者服务精神&#xff0c;扎实推进志愿者服务质量&#xff0c;2024年1月28日&#xff0c;曲阜师范大学计算机学院“青年扎根基层&#xff0c;服务走进社区”社会实践队队员周兴睿在孙宇老师的指导下&#xff0c;来到山东省滨州市陈集街道社区开展了为期一天的“…

Unity_ShaderGraph节点问题

Unity_ShaderGraph节点问题 Unity版本&#xff1a;Unity2023.1.19 为什么在Unity2023.1.19的Shader Graph中找不见PBR Master节点&#xff1f; 以下这个PBR Maste从何而来&#xff1f;

MQ,RabbitMQ,SpringAMQP的原理与实操

MQ 同步通信 异步通信 事件驱动优势&#xff1a; 服务解耦 性能提升&#xff0c;吞吐量提高 服务没有强依赖&#xff0c;不担心级联失败问题 流量消峰 ​ 小结: 大多情况对时效性要求较高&#xff0c;所有大多数时间用同步。而如果不需要对方的结果&#xff0c;且吞吐…

Zookeeper相关面试准备问题

Zookeeper介绍 Zookeeper从设计模式角度来理解&#xff0c;是一个基于观察者模式设计的分布式服务管理框架&#xff0c;它负责存储和管理大家都关心的数据&#xff0c;然后接受观察者的注册&#xff0c;一旦这些数据的状态发生了变化&#xff0c;Zookeeper就负责通知已经在Zoo…

SpringAOP+SpringBoot事务管理

项目搭建SpringAOPSpringBoot中管理事务AOP案例实战-日志记录日志系统 一、项目搭建 第一步&#xff1a;构建项目 第二步&#xff1a;导入依赖 第三步&#xff1a;配置信息 自动配置&#xff08;项目自动生成的启动类&#xff09; /*** 启动类&#xff1a;申明当前类是一个…

模拟被观察物体的位置和方向

开发环境&#xff1a; Windows 11 家庭中文版Microsoft Visual Studio Community 2019VTK-9.3.0.rc0vtk-example demo解决问题&#xff1a;模拟被观察物体的位置和方向&#xff0c;以帮助用户理解相机在观察特定对象时的位置和朝向。vtkCameraOrientationWidget 模拟的是被观察…

Redis核心技术与实战【学习笔记】 - 17.Redis 缓存异常:缓存雪崩、击穿、穿透

概述 Redis 的缓存异常问题&#xff0c;除了数据不一致问题外&#xff0c;还会面临其他三个问题&#xff0c;分别是缓存雪崩、缓存击穿、缓存穿透。这三个问题&#xff0c;一旦发生&#xff0c;会导致大量的请求积压到数据库。若并发量很大&#xff0c;就会导致数据库宕机或故…

九州金榜|如何做好家庭教育

孩子的家庭教育是每个家庭都要做的&#xff0c;也是每个家长面临的事情&#xff0c;同样不同的家庭教育教育出来的孩子性格也各不相同&#xff0c;有时候家长看别别人家的孩子品学兼优非常羡慕&#xff0c;很多家长会把问题归结到孩子身上&#xff0c;其实有没有想过是家庭教育…

C++之函数重载,默认参数,bool类型,inline函数,异常安全

函数重载 在实际开发中&#xff0c;有时候需要实现几个功能类似的函数&#xff0c;只是细节有所不同。如交换两个变量的值&#xff0c;但这两种变量可以有多种类型&#xff0c;short, int, float等。在C语言中&#xff0c;必须要设计出不同名的函数&#xff0c;其原型类似于&am…

【新书推荐】6.2节 段寄存器

在16位汇编语言的源程序中&#xff0c;我们将源程序按照不同的功能和作用划分为若干个逻辑段&#xff0c;如数据段用来存储数据&#xff0c;代码段用来存储代码&#xff0c;堆栈段用来保存临时数据&#xff0c;附加段用来拷贝数据。我们可以把汇编语言的源程序抽象地理解为数据…

TCP与UDP:传输层协议的差异与选择

在计算机网络中&#xff0c;传输控制协议&#xff08;TCP&#xff09;和用户数据报协议&#xff08;UDP&#xff09;是两种常用的传输层协议。然而&#xff0c;随着互联网的快速发展&#xff0c;传统的TCP和UDP在某些场景下存在一些限制。为了解决这些问题&#xff0c;出现了新…

如何使用VS Code编写小游戏并实现公网游玩本地游戏【内网穿透】

文章目录 前言1. 编写MENJA小游戏2. 安装cpolar内网穿透3. 配置MENJA小游戏公网访问地址4. 实现公网访问MENJA小游戏5. 固定MENJA小游戏公网地址 前言 本篇教程&#xff0c;我们将通过VS Code实现远程开发MENJA小游戏&#xff0c;并通过cpolar内网穿透发布到公网&#xff0c;分…

No matching client found for package name ‘com.unity3d.player‘

2024年2月5日更新 必须使用Unity方式接入Unity项目&#xff01;一句话解决所有问题。&#xff08;真的别玩Android方式&#xff09; 大致这问题出现原因是我在Unity采用了Android方式接入Firebase&#xff0c;而Android接入实际上和Unity接入方式有配置上的不一样&#xff0c;我…