• Spring Cloud Sentinel整合Nacos实现配置持久化


    sentinel配置相关配置后无法持久化,服务重启之后就没了,所以整合nacos,在nacos服务持久化,sentinel实时与nacos通信获取相关配置。

    使用上一章节Feign消费者服务实现整合。

    版本信息:

    nacos:1.4.1
    Sentinel 控制台 1.7.2
    spring-boot:2.3.3.RELEASE
    spring.cloud.version:Hoxton.SR8
    spring.cloud.alibaba.version:2.2.3.RELEASE

    1、项目POM.xml 引入

     <!--sentinel配置数据源nacos-->
           <dependency>
               <groupId>com.alibaba.csp</groupId>
               <artifactId>sentinel-datasource-nacos</artifactId>
           </dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2、bootstrap.yml追加Nacos数据源配置:

    在这里插入图片描述

    整个文件内容为:

    server:
      port: 8083
    spring:
      profiles:
        active: dev
      application:
        name: tt-sc-feign-consumer
      cloud:
        nacos:
          username: nacos
          password: nacos
          config:
            server-addr: 192.168.10.x:8848
            file-extension: yml
          discovery:
            server-addr: 192.168.10.x:8848
        #sentinel看板相关配置
        sentinel:
          transport:
            dashboard: 192.168.10.x:8080
            #SpringBoot项目与控制台做交互的端口,默认8719
            port: 8723
          eager: true
          #添加Nacos数据源配置
          datasource:
            #名字自定义即可
            ds1:
              nacos:
                server-addr: 192.168.10.x:8848
                username: nacos
                password: nacos
                #请求频率较高
                namespace: public
                dataId: tt-sc-feign-consume-sentinel
                groupId: DEFAULT_GROUP
                data-type: json
                rule-type: flow
    #        ds2:
    #          nacos:
    #            server-addr: 192.168.10.107:8848
    #            username: nacos
    #            password: nacos
    #            namespace: public
    #            dataId: tt-public
    #            groupId: DEFAULT_GROUP
    #            data-type: json
    #            rule-type: flow
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    3、Nacos配置:

    在这里插入图片描述
    在这里插入图片描述

    [
    	{
    		"resource": "/user/getUserSentinel",
    		"limitApp": "default",
    		"grade": 1,
    		"count": 2,
    		"strategy": 0,
    		"controlBehavior": 0,
    		"clusterMode": false
    	}
    ]
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    4、启动feingnconsumer服务:

    控制台输出获取nacos的配置

    在这里插入图片描述
    5、sentinel控制台:

    获取到nacos的配置信息

    在这里插入图片描述

    7、问题
    sentinel若获取不到nacos配置,检查配置文件是否存在问题,若无其他问题大概率原因就是版本不匹配。
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    .NET桌面程序集成Web网页开发的十种解决方案
    leetcode1669. 合并两个链表(java)
    一文搞明白STM32芯片存储结构
    重学java 61.IO流 字节流 ② 字节输出流
    Spark3.0 Sql 使用HiveTableScanExec 读取Hive orc表源码分析及参数调优
    ⭐北邮复试刷题LCR 012. 寻找数组的中心下标__前缀和思想 (力扣119经典题变种挑战)
    Docker 配置阿里云镜像加速器
    vulnhub靶机hacksudoLPE中Challenge-1
    GCP设置Proxy来连接Cloud SQL
    mybatisplus逻辑删除
  • 原文地址:https://blog.csdn.net/FORLOVEHUAN/article/details/134055397