Nacos配置管理

统一配置管理

在管理端这个按钮 新建一个配置管理

 Data  ID:   【服务名】【profile属性】【后缀名】

对于需要配置的服务引入依赖,比如提供者

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

增加配置文件bootstrap.yml,你可以将springcloud的配置移动到这里来,将application.yml的相关配置注解。

spring:
  application:
    name: userservice
  profiles:
    active: dev
  cloud:
    nacos:
      server-addr: localhost:8848
      config:
        file-extension: yaml

细心的我们可以发现

 一个是springboot的logo,一个是springcloud的logo。

对配置管理进行测试

再你的controller类中

    // 注入nacos中的配置属性
    @Value("${pattern.dateformat}")
    private String dateformat; 
    // 编写controller,通过日期格式化器来格式化现在时间并返回
    @GetMapping("now")
    public String now(){
        return LocalDate.now().format(                                   
                DateTimeFormatter.ofPattern(dateformat, Locale.CHINA)
        );
   }

总结

        在nacos中添加配置管理

        微服务中引入nacos的config依赖

        添加bootstrap.xml,配置cloud的属性值。

配置热更新

        配置文件变更后,我们需要重启才可以 感知数据的变化,我们其实可以实现自动刷新

方式一

给所在类加注解        

@RefreshScope

这种方式比较简单

方式二

书写一个新的配置类,将变量定义为该类的属性,例如

 注册为bean

    @Autowired
    private PatternProPerties proPerties;

通过自动装配获取该对象,然后通过get()方法获取属性,这样也可以实现。

总结

  不是所有的配置都适合放到配置中心,维护很繁琐

将需要运行时调整的参数放到nacos配置中心,也就是自定义的配置

配置共享

微服务启动时可以从nacos中读取多个配置文件

 比如我这里配置了两个。它们的优先级如下:

【服务名】-【profile】.yaml>【服务名】.yaml>bootstrap.yml

其中【服务名】.yaml是共享配置管理,你在该服务的其他实例中也是可以访问和使用它的配置属性值,不需要配置,是默认的。

 你可以通过这个类来定义配置的属性来检验。

不过你也可以令一些自定义名称的配置文件共享。

使用方式:在你的bootstrap.yml文件下

一:标红的地方就是我们额外加的

  cloud:

    nacos:

      server-addr: localhost:8848 # Nacos地址

      config:

        file-extension: yaml # 文件后缀名

        shared-configs: # 多微服务间共享的配置列表

          - dataId: common.yaml # 要共享的配置文件id

二:

extends-configs: # 多微服务间共享的配置列表

          - dataId: extend.yaml # 要共享的配置文件id

位置和之前的一致,就是配置属性关键字变了。

总的优先级如下:

        

搭建Nacos集群

搭建MySql集群并初始化数据库表

修改集群配置(结点信息)、数据库配置

分别启动多个nacos结点

nginx反向代理

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

零维展开智子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值