SpringBoot 2.0 + Nacos + Sentinel 流控规则集中存储至nacos完整配置步骤
前言Sentinel 原生版本的规则管理通过API 将规则推送至客户端并直接更新到内存中并不能直接用于生产环境。不过官方也提供了一种 Push模式扩展读数据源ReadableDataSource规则中心统一推送客户端通过注册监听器的方式时刻监听变化比如使用 Nacos、Zookeeper 等配置中心。这种方式有更好的实时性和一致性保证。这里我们通过配置 Nacos 来实现流控规则的统一存储配置。架构控制台推送规则至配置中心客户端通过监听事件从配置中心获取流控规则。客户端配置pom.xml 引入dependency groupIdcom.alibaba.csp/groupId artifactIdsentinel-datasource-nacos/artifactId version1.6.3/version /dependency配置文件# nacos的访问地址配置参考 https://blog.52itstyle.vip/archives/4174/ spring.cloud.sentinel.datasource.ds.nacos.server-addr47.104.187.19:8848 #nacos中存储规则的dataId,对于dataId使用了${spring.application.name}变量这样可以根据应用名来区分不同的规则配置 spring.cloud.sentinel.datasource.ds.nacos.dataId${spring.application.name}-flow-rules #nacos中存储规则的groupId spring.cloud.sentinel.datasource.ds.nacos.groupIdSENTINEL_GROUP #定义存储的规则类型 spring.cloud.sentinel.datasource.ds.nacos.rule-typeflow控制台配置修改 pom.xml原来的scopetest/scope去掉dependency groupIdcom.alibaba.csp/groupId artifactIdsentinel-datasource-nacos/artifactId /dependency把src/test下面的包com.alibaba.csp.sentinel.dashboard.rule.nacos拷贝到src/main/java下面。修改 NacosConfig/** * author Eric Zhao * since 1.4.0 */ Configuration public class NacosConfig { Value(${nacos.address}) private String address; Bean public ConverterListFlowRuleEntity, String flowRuleEntityEncoder() { return JSON::toJSONString; } Bean public ConverterString, ListFlowRuleEntity flowRuleEntityDecoder() { return s - JSON.parseArray(s, FlowRuleEntity.class); } Bean public ConfigService nacosConfigService() throws Exception { Properties properties new Properties(); properties.put(serverAddr,address); return ConfigFactory.createConfigService(properties); } }application.properties 配置引入 Nacos# nacos的访问地址配置参考 https://blog.52itstyle.vip/archives/4174/ nacos.address47.104.197.19:8848FlowControllerV2指定对应的 Bean 开启 Nacos 适配。Autowired Qualifier(flowRuleNacosProvider) private DynamicRuleProviderListFlowRuleEntity ruleProvider; Autowired Qualifier(flowRuleNacosPublisher) private DynamicRulePublisherListFlowRuleEntity rulePublisher;修改sidebar.html页面 流控规则路由从dashboard.flowV1改成dashboard.flow-- nacos 动态规则配置-- li ui-sref-activeactive ng-if!entry.isGateway a ui-srefdashboard.flow({app: entry.app}) i classglyphicon glyphicon-filter/inbsp;nbsp;流控规则/a /li如图所示界面会多了一个回到单机页面的按钮这里我们新增一个流控规则。登录 Nacos 后台配置管理-配置列表点击进入配置详情配置内容如下[{ app: blog, clusterConfig: { fallbackToLocalWhenFail: true, sampleCount: 10, strategy: 0, thresholdType: 0, windowIntervalMs: 1000 }, clusterMode: false, controlBehavior: 0, count: 2.0, gmtCreate: 1568617671812, gmtModified: 1568622253889, grade: 1, id: 6, ip: 10.136.168.88, limitApp: default, port: 8720, resource: blogView, strategy: 0 }]小结生产环境下推送规则正确做法应该是 配置中心控制台/Sentinel 控制台 → 配置中心 → Sentinel 数据源 → Sentinel。案例https://gitee.com/52itstyle/spring-boot-blog参考https://cloud.tencent.com/developer/article/1549863https://github.com/alibaba/Sentinelhttps://github.com/alibaba/Sentinel/tree/master/sentinel-dashboard

相关新闻

多Agent全链路实战:从零开始构建企业级AI营销系统,程序员必学指南

多Agent全链路实战:从零开始构建企业级AI营销系统,程序员必学指南

2026/7/8 3:21:13 阅读更多 →
【值得收藏】AI Agent核心概念:大模型智能体开发完全指南

【值得收藏】AI Agent核心概念:大模型智能体开发完全指南

2026/7/3 21:06:56 阅读更多 →
基于Spring AI的电商客服RAG系统实战教程,小白也能轻松上手

基于Spring AI的电商客服RAG系统实战教程,小白也能轻松上手

2026/7/3 21:07:07 阅读更多 →

最新新闻

AI编程工具风险:避免成为代码文盲的实践指南

AI编程工具风险:避免成为代码文盲的实践指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 最近在技术圈里,一个现象越来越明显:很多刚入行的开发者,面对一个简单的业务逻辑修改,…

2026/7/10 3:54:40 阅读更多 →
TLA2518与STM32F413RH的ADC接口设计与优化实践

TLA2518与STM32F413RH的ADC接口设计与优化实践

1. TLA2518与STM32F413RH的硬件协同设计 在工业测量和嵌入式系统中,模拟信号到数字信号的可靠转换是数据采集的基础环节。TI的TLA2518作为一款12位精度、1MSPS采样率的8通道SAR型ADC,与ST的STM32F413RH这款搭载硬件ADC外设的Cortex-M4微控制器组合&#…

2026/7/10 3:54:40 阅读更多 →
Unity MonoBehaviour生命周期详解:从原理到实战避坑指南

Unity MonoBehaviour生命周期详解:从原理到实战避坑指南

1. 项目概述与核心价值如果你在Unity里写过脚本,那你一定对MonoBehaviour不陌生。它几乎是所有游戏逻辑的起点。但你是否曾经对Awake和Start的执行顺序感到困惑?或者疑惑为什么物理计算要放在FixedUpdate里,而LateUpdate又适合做什么&#xf…

2026/7/10 3:54:40 阅读更多 →
JPrint V3.1.3 实战:5分钟搭建Web静默打印服务,支持PDF/HTML/图片

JPrint V3.1.3 实战:5分钟搭建Web静默打印服务,支持PDF/HTML/图片

JPrint V3.1.3 实战:5分钟搭建Web静默打印服务,支持PDF/HTML/图片在当今企业级应用中,无感打印已成为提升业务流程效率的关键技术。传统Web打印方案常面临预览弹窗干扰、格式错乱等痛点,而基于Java生态的JPrint控件通过服务化架构…

2026/7/10 3:52:39 阅读更多 →
Unity动态避障:NavMeshObstacle参数详解与实战配置

Unity动态避障:NavMeshObstacle参数详解与实战配置

1. 项目概述:为什么动态障碍物是AI寻路的“老大难”?在Unity里做寻路,给静态场景烘焙个NavMesh,再挂个NavMeshAgent组件,这事儿大家都会。但一旦场景里出现了会动的家伙——比如被玩家推着走的箱子、被爆炸炸飞的油桶、…

2026/7/10 3:50:38 阅读更多 →
数据分析入门:Excel、SQL、Tableau、Python四件套自学实战指南

数据分析入门:Excel、SQL、Tableau、Python四件套自学实战指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 你好,我是专注于技术分享的博主。数据分析能力已成为当今职场,尤其是互联网、金融、咨询等行业的硬通货。无论…

2026/7/10 3:50:38 阅读更多 →

日新闻

STM32与LTC1864高精度ADC的SPI通信实现

STM32与LTC1864高精度ADC的SPI通信实现

1. 项目背景与核心需求在工业控制和嵌入式系统开发中,模拟信号与数字系统的无缝集成一直是工程师面临的关键挑战。LTC1864作为一款16位高精度ADC转换器,配合STM32F101ZG这类主流微控制器,能够构建高性能的模拟信号采集系统。这种组合特别适合…

2026/7/10 0:03:07 阅读更多 →
猫抓插件:浏览器资源嗅探与视频下载的终极解决方案

猫抓插件:浏览器资源嗅探与视频下载的终极解决方案

猫抓插件:浏览器资源嗅探与视频下载的终极解决方案 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 还在为网页视频无法下载而烦恼吗&am…

2026/7/10 0:05:09 阅读更多 →
直流有刷电机驱动方案:TC78H653FTG与MKV46F256VLH16应用

直流有刷电机驱动方案:TC78H653FTG与MKV46F256VLH16应用

1. 直流有刷电机驱动方案概述在工业自动化和消费电子领域,直流有刷电机因其结构简单、控制方便、成本低廉等优势,仍然是许多应用场景的首选驱动方案。TC78H653FTG作为东芝推出的新一代H桥驱动器,与MKV46F256VLH16微控制器配合使用&#xff0c…

2026/7/10 0:05:09 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/8 16:14:06 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/9 13:46:46 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/9 21:41:05 阅读更多 →

月新闻