news 2026/7/22 5:37:21

Nacos持久化Sentinel规则配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Nacos持久化Sentinel规则配置

使用Sentinel配置限流和熔断发现只要服务重启dashboard中的规则就会全部消失,将配置持久化到Nacos,服务启动自动同步规则到Sentinel。

导入依赖

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency><dependency><groupId>com.alibaba.csp</groupId><artifactId>sentinel-datasource-nacos</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency>

Nacos创建配置,一个类型的规则创建一个配置即可,多的可以追加。

限流配置

[{"resource":"/user/login","limitApp":"default","grade":1,"count":2,"strategy":0,"controlBehavior":0}]
  • resource:资源名,需要保护的接口
  • limitApp:流控针对的来源
  • grade: 阈值类型,1表示QPS
  • count:阈值大小,QPS
  • strategy:流控模式,0表示直接流控
  • controlBehavior:流控效果,0表示快速失败

熔断配置

[{"resource":"/user/getNearUserPhotoById/{id}","grade":0,"count":0.05,"timeWindow":5,"minRequestAmount":5,"statIntervalMs":10000,"slowRatioThreshold":0.2}]
  • resource:资源名(接口名)
  • grade:熔断策略
  • count:阈值
  • timeWindow:熔断持续时间(秒)
  • minRequestAmount:最小请求数
  • statIntervalMs:统计时间窗口(毫秒)
  • slowRatioThreshold:慢调用比例阈值(0~1)

yml文件中增加配置

spring:cloud:sentinel:transport:dashboard:localhost:8866port:8719datasource:ds1:#添加nacos数据源的配置,将sentinel配置持久化到nacos里面 nacos:server-addr:localhost:8848dataId:sentinel-limit groupId:sentinel data-type:json rule-type:flow ds2:nacos:server-addr:localhost:8848dataId:sentinel-breaker groupId:sentinel data-type:json rule-type:degrade nacos:discovery:server-addr:localhost:8848

重启项目后请求接口发现规则同步成功


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/22 5:37:11

C++ std::declval:编译期类型探测与SFINAE编程的核心工具

1. 项目概述&#xff1a;为什么我们需要std::declval在C模板元编程和类型萃取的世界里&#xff0c;我们常常会遇到一个看似简单却令人头疼的问题&#xff1a;如何在不构造对象的情况下&#xff0c;获取一个类型的成员信息&#xff1f;比如&#xff0c;你想写一个类型特性&#…

作者头像 李华
网站建设 2026/7/22 5:35:10

RocketMQ NameSrv架构设计与核心实现解析

1. NameSrv核心功能与架构定位 RocketMQ的NameSrv&#xff08;Name Server&#xff09;作为分布式消息队列的核心组件&#xff0c;承担着整个系统的路由中枢角色。与ZooKeeper等传统注册中心不同&#xff0c;NameSrv采用轻量级设计&#xff0c;仅维护Broker的活跃状态和路由信息…

作者头像 李华
网站建设 2026/7/22 5:34:16

Unity游戏资源逆向:通用去马赛克技术解析与实践指南

1. 项目概述&#xff1a;Unity游戏去马赛克的核心诉求在游戏开发与二次创作领域&#xff0c;尤其是涉及角色扮演、视觉小说等类型的Unity游戏&#xff0c;开发者出于艺术风格、分级审查或技术限制等原因&#xff0c;常常会为游戏内的图像资源&#xff08;如角色立绘、场景贴图&…

作者头像 李华
网站建设 2026/7/22 5:33:41

C++模板编程:从泛型思想到实战应用

1. 项目概述&#xff1a;为什么C模板是泛型编程的基石如果你写过C&#xff0c;尤其是写过一些需要处理多种数据类型的通用代码&#xff0c;比如一个能排序int、double、string的排序函数&#xff0c;那你一定对重复编写几乎相同逻辑、仅类型不同的代码感到厌倦。C模板&#xff…

作者头像 李华
网站建设 2026/7/22 5:33:34

C++实现卡尔曼滤波器:从原理到仿真的完整开发指南

1. 项目概述&#xff1a;从理论到实践的卡尔曼滤波器如果你接触过机器人、无人机导航或者任何需要从带噪声的传感器数据中估计系统状态的领域&#xff0c;那么“卡尔曼滤波器”这个名字你一定不陌生。它被誉为“最优估计器”&#xff0c;是数据融合和状态估计领域的基石算法。然…

作者头像 李华
网站建设 2026/7/22 5:32:34

C++编译错误C2065:getline未声明标识符的全面解析与解决方案

1. 问题现象与根源剖析如果你正在用Visual Studio&#xff08;尤其是老版本&#xff0c;比如VS 2010, 2013&#xff09;或者某些特定配置的编译器捣鼓C代码&#xff0c;突然蹦出来一个“error C2065: ‘getline‘ : undeclared identifier”的报错&#xff0c;心里肯定咯噔一下…

作者头像 李华