什么是 Nacos?
Nacos 是阿里巴巴推出来的一个新开源项目,这是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
官网:https://nacos.io/zh-cn/index.html
前提条件
您需要先下载 Nacos 并启动 Nacos server,我下载的是目前最新的包nacos-server-1.0.0.zip,解压后直接启动bin目录下startup.cmd,直接访问locahost:8848/nacos/index.html,用户名与密码都是nacos
第二步:新建一个maven项目在pom.xml引入以下包
<parent>
第三步:新建命名空间
规则参考第四步骤
第四步:bootstrap.properties 接入nacos相关配置
spring.application.name=service-consumer
#nacos服务地址
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
#propertis 配置方式
#spring.cloud.nacos.config.file-extension=properties
#spring.cloud.nacos.config.group=DEFAULT_GROUP
#yml 配置方式
spring.cloud.nacos.config.file-extension=yaml
spring.cloud.nacos.config.group=DEV_GROUP
spring.profiles.active=dev
#命名空间ID
spring.cloud.nacos.config.namespace=4bbc856e-614c-4b90-af3b-fab9fe566c4e
spring.cloud.nacos.config.server-addr: localhost:8848
在 Nacos 官网手册介绍 中,dataId
${prefix}-${spring.profile.active}.${file-extension}
prefix
spring.application.name
spring.cloud.nacos.config.prefix
来配置。spring.profile.active
Spring Boot文档spring.profile.active
-
${prefix}.${file-extension}
file-exetension
spring.cloud.nacos.config.file-extension
properties
yaml
@RefreshScope
第五步:启动走一波
访问nacos服务此时在服务列表会展示刚刚启动的项目,说明服务注册成功
修改service-consumer-dev.yaml中的配置
查看控制台输出,显示以下信息说明,配置动态更新成功
------------------------------------------------end------------------------------------------------
Nacos vs Spring Cloud
相对于 Spring Cloud Eureka 来说,Nacos 更强大。
Nacos = Spring Cloud Eureka + Spring Cloud Config
Nacos 可以与 Spring, Spring Boot, Spring Cloud 集成,并能代替 Spring Cloud Eureka, Spring Cloud Config。
通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。
通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 实现服务的注册与发现。
更多具体用法和接入可以参考
Nacos 官方文档。