微服务开发-----Nacos自动刷新与多环境配置

第二天 b:

配置自动刷新(热刷新):

情况:当我们在nacos中,对于配置进行修改时,此时在网页上的格式并没有立刻发生改变,所有我们需要通过热刷新来解决这个问题。

要让微服务在nacos的配置文件发现改变后,微服务可以无需重启就可以感知。不过这里有两种方法可以进行改变。

一,方法一:

在添加了@Value注入的变量所在类上加入@RefreshScope

@RestController
@RequestMapping("/user")
@RefreshScope
public class UserController{
    
   @Value("${pattern.dateformat}")
   private String dateformat;

这个@RefreshScope就是用来进行刷新的注解。

二,方法二:

使用@ConfigurationProperties(prefix = "pattern")

@ConfigurationProperties(perfix = "pattern")
@Component
@Bean
public class PatternProperty{
     private String dateformat;
} 

这里的pattern.dateformat要与nacos中的配置相同,同时要加入@Component来使它成为服务的一部分。

多环境配置共享:

当我们启动一个项目时,它肯定会从nacos中读取多个配置文件:

比如:

[spring.application.name]-[spring.profile.active].yaml,例如:userService-dev.yml

[spring.application.name].yaml,例如:userService.yml

所以无论profile怎么改,[spring.application.name]它都是要用到的,因此在多环境配置中要加入它。

在nacos中注入多环境的配置。(它属于默认环境)

测试:

如何进行测试呢?

我们需要进行对于在另外环境的服务端口进行测试,这里我们可以不对yml文件进行修改,我们可以在新建的服务端接口进行修改 。

 点击修改配置。

修改完之后,就可以看到是否能够,在其中看到里面的配置的内容。

优先级顺序:

 

 根据上面的图,我们知道了他们的优先级顺序,服务名-profile>服务名称(多环境配置)>本地配置。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值