sentinel笔记9- 限流规则持久化(上)

之前的在sentinel 控制台配置的规则,重启后就消失了,sentinel 限流保护-笔记-CSDN博客

本篇还是在之前的demo做验证,使用nacos做持久化。

规则集成Nacos

1 引入依赖

复制代码
        <!--nacos-discovery  注册中心依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <!-- nacos-config 配置中心依赖 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
         <!--以nacos作为sentinel数据源的依赖-->
        <dependency>
            <groupId>com.alibaba.csp</groupId>
            <artifactId>sentinel-datasource-nacos</artifactId>
        </dependency>

就是备注的:sentinel-datasource-nacos

2 修改配置文件:

可以在nacos对应的改,也在在工程的application.yml改。我贴一下sentinel相关的。

复制代码
sentinel:
      transport:
        port: 8719
        # 添加sentinel的控制台地址
        dashboard: tlmall-sentinel-dashboard:8888
      datasource:
        nacos:
          nacos:
            server-addr: localhost:8848
            data-id: tlmall-storage-flow-rules.json
            rule-type: flow
            group-id: DEFAULT_GROUP
            username: nacos
            password: nacos
  config:
    import:
      - optional:nacos:${spring.application.name}.yml
      - optional:nacos:db-common.yml    #数据库公共配置
      - nacos:nacos-discovery.yml
      - optional:nacos:seata-client.yml

3 nacos配置规则

注意,dataid跟上面配置信息保持一致。

参数的含义:

验证:

重启sentinel ,

也可以再用postman测试下效果,超过阈值的会被拦截。

小结:

nacos中的配置文件对于sentinel来讲是单项数据读入,sentinel能监听到nacos中配置的变化,但是我们在sentinel中修改了配置,nacos是不会监听到并进行修改。目前使用的版本1.8.6 只是配置下就这样了,不改代码做不到双向同步。

相关推荐
怒放吧德德11 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆12 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌15 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊16 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang16 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang17 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解18 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing1 天前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean1 天前
Jackson View Extension Spring Boot Starter
java·后端
Seven971 天前
剑指offer-79、最⻓不含重复字符的⼦字符串
java