配置共享|学习笔记

简介: 快速学习配置共享

开发者学堂课程【全面讲解Spring Cloud Alibaba技术栈(知识精讲+项目实战)第五阶段配置共享】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/687/detail/11920


配置共享


内容介绍:

一、同一个微服务的不同环境之间共享配置

二、不同微服务中间共享配置

当配置越来越多的时候,就发现有很多配置是重复的,这时候可以考虑将公共配置文件提取出来,然后实现共享。


一、同一个微服务的不同环境之间共享配置

如果想在同一个微服务的不同环境之间实现配置共享,其实很简单。

只需要提取一个以 spring.application.name 命名的配置文件,然后将其所有环境的公共配置放在里面即可。

新建一个名为 service-product.yaml 配置存放商品微服务的公共配置

image.png

实例操作:

首先提取一个配置,在编辑配置中的配置内容里,全部把它复制粘贴到新建配置的配置内容中,配置格式改成 yaml,将配置内容里的 config 及其内容删除,新建配置的 Data ID 为 service-product.yaml,group:DEFAULF_GROUP

描述:商品微服务的公共配置

点击发布,配置成功

将公共配置提取出去以后,只需要编辑单独的部分

在配置列表中,service-product-dev.yaml 的操作中,点击编辑,将描述改成商品微服务(dev 环境)的配置,把配置内容中公共部分删掉,加上 env:dev,之后确认发布

在配置列表中添加,创建新建配置

Data ID:service-product-test.yaml

Group:DEFAULT_GROUP

描述:商品微服务( test 环境)配置

配置格式:test

配置内容:config:

appName:product

env:test

点击发布

以上三个配置分别为 service-product-dev.yaml 开发配置service-product.yaml 公共配置service-product-test.yaml 测试配置达到了配置环境之间的配置共享

运行测试

在 NacosConfigController 中,将

@RequestMapping ( "/ test-config2"")publig sxing testConfig2(){

return appName; }

复制粘贴到下一行,将

@value ( "$ { config. appNane } ")private string appName ;

复制粘贴到下一行并将复制粘贴的三个 appName 改成 env,test-Config 2中的2改为3最后导出,没有出错,并运行成功

将 bootstrap.yaml 中的 env 改成 text 并运行,运行成功。

二、不同微服务中间共享配置

不同微服务之间实现配置共享的原理类似于文件引入,就是定义一个公共配置,然后在当前配置中引入。

service-product.yaml 这个配置删除,bootstrap.yaml 因缺少配置无法运行。

在 nacos 中定义一个 DatalD 为 all-service.yaml 的配置,用于所有微服务共享

spring:

datasource:

driver-class-name: com.mysq1.jdbc. Driver

ur1: jdbc:mysq1:/ //shop?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true

username: root

password: root

jpa:

properties :

hibernate:

hbm2dd1 :

auto: update

dialect: org.hibernate.dialect.MySQL 5InnoDBDialect

cloud:

nacos :

discovery:

server -addr : 127.0.0.1:8848

在nacos的中修改service-product.yaml中为下面内容

server :

port: 8081

config:

appName: product

修改bootstrap.yaml

spring:

application:

name: service-product

cloud :

nacos :

config:

server-addr: 127.0.0.1:8848 #nacos中心地址

file-extensionf yam1 #配置文件格式

shared-dataids: a71-service.yaml #配置要引入的配器

refreshable-dataids: a11-service.yam1 #配置要实现动态配置刷新的配器

profiles :

active: dev #环境标识

image.png

启动商品微服务进行测试,成功运行。

相关文章
|
关系型数据库 OLAP API
创建并管理应用|学习笔记
快速学习创建并管理应用
82 0
创建并管理应用|学习笔记
|
弹性计算 算法 网络安全
共享带宽简介|学习笔记
快速学习共享带宽简介
550 0
共享带宽简介|学习笔记
|
安全 Ubuntu Linux