nacos服务中心
可视化:localhost:8848
登录名:nacos 密码:nacos
注册中心
1.引入maven依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>0.2.2.RELEASE</version>
</dependency>
2.application配置文件中
# 设置微服务名称
spring.application.name=nacos-provider
# 配置nacos服务地址
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
3.在启动类中加入@EnableDiscoveryClient
注解
远程调用服务
示例 会员服务 调用 优惠卷服务
1 两个服务 pom中引入open feign 和 nacos 服务注册与发现,都放到父pom中统一管理
2 会员服务启动类中 启用openfeign
3 在会员服务中编写OpenFeigin接口
4 注入到会员服务 调用接口
配置中心
— —动态刷新配置,改动配置文件,不用重启服务
1.引入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>0.2.2.RELEASE</version>
</dependency>
2.nacos中配置统一设置
创建配置文件
dataId命名规范
${prefix}-${spring.profile.active}.${file-extension}
prefix
默认为所属工程配置spring.application.name
的值
注意:当 spring.profile.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 ${prefix}.${file-extension}
3.bootstrap.yml的基本配置
spring:
application:
# 微服务名
name: pms-service
cloud:
nacos:
config:
# nacos 注册/配置中心地址
server-addr: 127.0.0.1:8848
# 命名空间 不使用的话默认public
namespace: dd59732b-ad25-4de4-b9e4-ec9801a5e3f0
group: dev
# 如果是yml配置文件,需要加入
file-extension: yml
4.通过 Spring Cloud 原生注解 @RefreshScope
实现配置自动更新
加载多配置文件
在bootstrap.properties文件中添加如下配置:
spring.cloud.nacos.config.ext-config[0].data-id=redis.properties
# 开启动态刷新配置,否则配置文件修改,工程无法感知
spring.cloud.nacos.config.ext-config[0].refresh=true
spring.cloud.nacos.config.ext-config[1].data-id=jdbc.properties
spring.cloud.nacos.config.ext-config[1].refresh=true
配置的分组
# 指定分组
spring.cloud.nacos.config.ext-config[0].group=provider