微服务小结3---Nacos配置中心
上文说道nacos具有和配置中心两大功能,本文接着讲nacos的配置中心
本文基于所作笔记
Nacos配置管理
统一配置管理 这里建议DATA ID 的格式为 [服务名称]-[profile].后缀名 在后续yaml的配置值需要用到这个id以及对应的格式
通常来讲 建议nacos配置的都是需要变化的配置信息 所以涉及到如何将变化的配置信息和固定的配置信息结合配置的问题 我们只需要设定一个比固定application.yaml优先级较高的bootstrap.yml配置文件先读取nacos中的配置即可 具体配置 引入nacos依赖
<!-- nacos客户端依赖包 --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
写一个bootstrap.yml文件 下列配置和我们之前的DATA ID 要对应 才能找到我们的配置
spring: application: name: userService profiles: active: dev cloud: nacos: server-addr: localhost:8848 config: file-extension: yaml #后缀名
注入nacos配置中的属性并获取 两种获取配置属性的方式
//方式1 @value("${属性前缀.属性名}”) @RestController @RequestMapping("/user") @RefreshScope //开启热部署 自动配置 public class UserController{ @value("${属性前缀.属性名}" private String ***(属性); } //方式2@ConfiguratrionProperties @RestController @RequestMapping("/user") @AconfigurationProperties(prefix = "属性前缀) public class UserController{ private String ***(属性); }
Nacos集群搭建
1 解压进入conf目录 ,修改配置文件cluster.conf.example,重命名为cluster.conf: 2 3 修改application.properties文件,添加数据库配置 4 将这个nacos文件备份为三个nacos 5 修改三个文件的application.properties 6 启动三个服务
配置nginx
修改nginx.conf文件 在http内加入
upstream nacos-cluster { server 127.0.0.1:8845; server 127.0.0.1:8846; server 127.0.0.1:8847; } server { listen 80; server_name localhost; location /nacos { proxy_pass http://nacos-cluster; } }
在yml文件中将端口修改为80
spring: cloud: nacos: server-addr: localhost:80 # Nacos地址
配置完毕