springcloud-part2

19 服务实例的权重设置

希望性能好的机器承担更多用户请求。

权重修改为0
作用:不会被访问
使用场景:版本升级时候,停机不会有影响,用户无感知。

20 Nacos-环境隔离

nacos中服务存储和数据存储的最外层都是一个namespace的东西,用来做最外层隔离。

隔离的需求原因
基于环境变化

25 Nacos实现配置管理

统一配置管理

微服务越来越多
配置文件需要修改,但是和多个微服务都有关系。服务改完之后重启,统一管理。

配置更改热更新
配置管理服务
会通知微服务,进行读取配置和热更新。

DataId:配置文件名称(微服务名称) userservice-dev.yaml
group:默认
配置内容:开关进行管理(有热更新需求的)
	pattern:
		dataformat: yyyy-MM-dd

26 微服务配置拉取

统一配置管理

项目启动-》bootstrap.yml(存放nacos地址)-》读取nacos配置文件-》读取本地配置文件-》创建spring容器-》加载bean

官方:与nacos地址和配置文件有关的所有信息都应该放到bootstrap.yml
step1

引入nacos配置管理依赖

nacos-config
step2
服务名称,开发环境,文件后缀名
 resource目录添加bootstrap.yml文件,引导文件,优先级高。
 
将application.yml重复部分的干掉。
这些决定了程序启动时取nacos读取哪个文件。
测试是否读取到配置
@Value("${pattern.dateformat}")
private String dateformat;

27 配置热更新

配置自动刷新

方式1

@Value所在类添加@RefreshScope

方式2

@ConfigurationProperties注解

@Data
@Compoment
@ConfigurationProperties(prefix="pattern")
public class PatternProperties{
	private String dateformat;
}


//使用
@Autowired
private PatternProperties patternProperties;

后续使用
patternProperties.getDateformat;

28 多环境配置共享

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

无论profile如何改变, spring.application.name.yaml这个文件一定会被加载,多环境共享配置可以写入这个文件。
step1

修改patternProperties类

public class PatternProperties{
	private String dateformat;
	private String envSharedValue;
}
step2
写一个方法,看看是否调用。

多种配置优先级

服务名-profile.yaml>服务名.yaml>本地配置

服务名.yaml 默认配置,多环境共享
服务名-profile.yaml  环境配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值