做网站一般要多钱,网站安全维护怎么做,商业网站模板,长沙人才市场招聘信息上篇主要讲了使用eureka#xff0c;zk#xff0c;nacos当注册中心
这篇内容是nacos配置中心
代码改动部分mysql驱动更新到8.0#xff0c;数据库版本升级到了8.0#xff0c;nacos版本更新到了2.x
nacos2.x链接 链接#xff1a;https://pan.baidu.com/s/11nObzgTjWisAfOp…上篇主要讲了使用eurekazknacos当注册中心
这篇内容是nacos配置中心
代码改动部分mysql驱动更新到8.0数据库版本升级到了8.0nacos版本更新到了2.x
nacos2.x链接 链接https://pan.baidu.com/s/11nObzgTjWisAfOplNuKP-Q?pwdo93q 提取码o93q –来自百度网盘超级会员V7的分享
然后启动nacos新建两个命名空间它的作用是为了区分不同环境 再切换到配置列表切换到dev的这个命名空间 点创建配置创建一个配置文件类型为yaml 他们的关系如下 Nacos默认的Namespace是publicNamespace主要用来实现隔离。
比方说我们现在有三个环境开发、测试、生产环境我们就可以创建三个Namespace不同的Namespace之间是隔离的。
Group默认是DEFAULT_GROUPGroup可以把不同的微服务划分到同一个分组里面去
Service就是微服务:一个Service可以包含多个Cluster (集群)Nacos默认Cluster是DEFAULTCluster是对指定微服务的一个虚拟划分。
比方说为了容灾将Service微服务分别部署在了杭州机房和广州机房这时就可以给杭州机房的Service微服务起一个集群名称(HZ) 给广州机房的Service微服务起一个集群名称(GZ)还可以尽量让同一个机房的微服务互相调用以提升性能。 最后是Instance就是微服务的实例。 然后我们启动一下这个服务调用一下接口可以看到成功读取了配置
http://localhost:3377/config/info 简单使用的就说到这里
后面再说一下其他的
注
1不能使用原来的application.yml作为配置文件而是新建一个bootstrap.yml作为配置文件
2在bootstrap和application数据项相同时bootstrap中的配置不会被覆盖
配置文件优先级(由高到低):
bootstrap.properties - bootstrap.yml - application.properties - application.yml 配置动态刷新 在入门案例中我们实现了配置的远程存放但是此时如果修改了配置我们的程序是无法读取到 的因此我们需要开启配置的动态刷新功能。
//只需要在需要动态读取配置的类上添加此注解就可以 RefreshScope 后面再说一下配置共享
如果想在同一个微服务的不同环境之间实现配置共享其实很简单。 只需要提取一个以spring.application.name 命名的配置文件然后将其所有环境的公共配置放在里 面即可。
1 新建一个名为nacos-config-client.yamll配置代表只要服务名是nacos-config-client都能读到这个配置 不同微服务中间共享配置
不同为服务之间实现配置共享的原理类似于文件引入就是定义一个公共配置然后在当前配置中引入。
在nacos中定义一个DataID为all-service.yaml的配置用于所有微服务共享 # nacos配置
server:port: 3377spring:application:name: nacos-config-clientcloud:nacos:discovery:server-addr: localhost:8848 #Nacos服务注册中心地址config:server-addr: localhost:8848 #Nacos作为配置中心地址file-extension: yaml #指定yaml格式的配置group: NACOS_GROUPnamespace: dev#共享的配置
# shared-dataids: all-service.yaml # 配置要引入的配置
# refreshable-dataids: all-service.yaml # 配置要实现动态配置刷新的配置ext-config:- data-id: all-service.yamlgroup: NACOS_GROUPrefresh: true