Spring Cloud Alibaba Nacos_配置中心与服务发现(三)
目录:
一、Nacos 配置管理-应用于分布式系统-微服务创建
1.1 发布配置 ( nacos-1.1.3 )
1.2 打开 idea 创建一个父 Maven 工程 nacos_config 工程,和两个子模块(service1, service2 )。
1.3 在 父工程的 pom.xml 配置文件中导入依赖
1.4 新增 service1, service2 子工程(子模块)
1.5 在子工程 service1, service2 的 pom.xml 文件中加入依赖
1.6 创建 service1, service2 子工程的配置文件 bootstrap.yml
1.7 创建 springboot 启动类 Service1BootStrap.java, Service2BootStrap.java
1.8 分别启动两个测试类的运行 main() 方法
二、Nacos 配置管理-应用于分布式系统-微服务读取配置
2.1 修改 service1 子模块的启动类 Service1BootStrap.java 动态获取配置信息。
2.2 启动 nacos 服务( /bin/startup.cmd ) 浏览器访问:http://127.0.0.1:8848/nacos
2.3 同样,修改 service2 子模块的启动类 Service2BootStrap.java
2.4 启动 nacos 服务( /bin/startup.cmd )
三、Nacos 配置管理-应用于分布式系统-自定义扩展Data ID
3.1 打开 nacos 控制台,并点击菜单 配置管理 --> 配置列表 --> dev
3.2 修改 bootstrap.yml 配置文件,添加扩展 DataId 配置
3.3 修改 Service1BootStrap.java 启动类,添加 动态获取配置方法 getConfig2()
3.4 浏览器地址栏输入:http://localhost:56010/configs2
四、Nacos 配置管理-应用于分布式系统-配置优先级
4.1 登录 http://127.0.0.1:8848/nacos 修改配置,添加 age 内容,测试 DataId 优先级。
4.2 修改 bootstrap.yml 配置文件,添加注释
4.3 启动 nacos 服务 (运行启动类 )
4.4 浏览器地址栏输入:http://localhost:56010/configs2 测试查看优先级
一、Nacos 配置管理-应用于分布式系统-微服务创建
1.1 发布配置 ( nacos-1.1.3 )
首先在 nacos 发布配置,规划两个服务 service1, service2,
并且对这两个服务的配置进行集中维护。
启动 nacos 服务( /bin/startup.cmd )
浏览器访问:http://127.0.0.1:8848/nacos
1)打开控制台,先创建 3 个命名空间 namespace
命名空间 namespace
--> 新建命名空间 namespace
--> 命名空间名: dev
描述:开发环境
--> 确定。
命名空间 namespace
--> 新建命名空间 namespace
--> 命名空间名: pro
描述:生产环境
--> 确定。
命名空间 namespace
--> 新建命名空间 namespace
--> 命名空间名: test
描述:测试环境
--> 确定。
2)打开 nacos 控制台,并点击菜单 配置管理 --> 配置列表 --> dev :
添加如下配置: service1
namespace : dev
Data ID : service1.yaml
Group : TEST_GROUP
配置模式 :YAML
配置内容 :common:
name: service1 config--dev 开发环境
(注意:配置内容,遵循 yaml 文件格式,
: 后要有空格,缩进不能用 Tab键 缩进,两个空格缩进就行 )
namespace : pro #生产环境
Data ID : service2.yaml
Group : TEST_GROUP #测试组
配置模式 :YAML
配置内容 :common:
name: service2 config--pro 生产环境
1.2 打开 idea 创建一个父 Maven 工程 nacos_config 工程,
和两个子模块( service1, service2 )。
--> idea
--> File
--> New Project
--> Maven
--> Groupld : ( djh.it )
Artifactld : ( nacos_config )
Version : 1.0-SNAPSHOT
--> Next
--> Project name: ( nacos_config )
Project location: ( C:\java-test\idea2019\nacos_config )
--> Finish
(父工程不编写代码,可以删除 src 目录)
1.3 在 父工程的 pom.xml 配置文件中导入依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>djh.it</groupId>
<artifactId>nacos_config</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.1.3.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
<!-- C:\java-test\idea2019\nacos_config\pom.xml -->
1.4 新增 service1, service2 子工程(子模块),
创建两个子模块:
--> 右键 nacos_config 父工程
--> Modules
--> Maven
--> Groupld : ( djh.it )
Artifactld : ( service1 )
Version : 1.0-SNAPS