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 引入

bash 复制代码
 <!--sentinel配置数据源nacos-->
       <dependency>
           <groupId>com.alibaba.csp</groupId>
           <artifactId>sentinel-datasource-nacos</artifactId>
       </dependency>

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

整个文件内容为:

bash 复制代码
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

3、Nacos配置:


bash 复制代码
[
	{
		"resource": "/user/getUserSentinel",
		"limitApp": "default",
		"grade": 1,
		"count": 2,
		"strategy": 0,
		"controlBehavior": 0,
		"clusterMode": false
	}
]

4、启动feingnconsumer服务:

控制台输出获取nacos的配置


5、sentinel控制台:

获取到nacos的配置信息

7、问题

sentinel若获取不到nacos配置,检查配置文件是否存在问题,若无其他问题大概率原因就是版本不匹配。

相关推荐
喻米粒06225 分钟前
RabbitMQ消息相关
java·jvm·spring boot·spring·spring cloud·sentinel·java-rabbitmq
mqiqe7 小时前
Spring MVC 页面跳转方案与区别
python·spring·mvc
Pasregret7 小时前
04-深入解析 Spring 事务管理原理及源码
java·数据库·后端·spring·oracle
Micro麦可乐7 小时前
最新Spring Security实战教程(七)方法级安全控制@PreAuthorize注解的灵活运用
java·spring boot·后端·spring·intellij-idea·spring security
翻滚吧键盘8 小时前
spring打包,打包错误
java·后端·spring
_Djhhh8 小时前
基于SpringAOP面向切面编程的一些实践(日志记录、权限控制、统一异常处理)
java·spring boot·spring·maven·sprint
小杨4049 小时前
springboot框架项目实践应用十四(扩展sentinel错误提示)
spring boot·后端·spring cloud
星星不打輰9 小时前
Spring基于注解进行开发
java·spring
陈大爷(有低保)9 小时前
Spring中都用到了哪些设计模式
java·后端·spring
程序员 小柴10 小时前
SpringCloud概述
后端·spring·spring cloud