精华内容
下载资源
问答
  • Nacos 配置中心

    2019-07-19 00:08:12
    转载文章: Nacos 配置中心原理分析 Nacos 配置实时更新原理分析
    展开全文
  • Nacos配置中心

    2021-03-22 21:45:09
    Nacos配置中心API接口发布配置获取配置删除配置服务中如何配置各个环境中的通用配置如何配置?不同工程的通用配置如何配置? Nacos除了可以作为我们的服务注册和发现以外,它也可以作为服务的配置中心,它可以以中心...


    Nacos除了可以作为我们的服务注册和发现以外,它也可以作为服务的配置中心,它可以以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。我们之前根据开发环境可以分为test,prod,dev环境,项目上线需要手动修改Spring.profiles.active的值,来部署环境。
    Nacos的官网文档中已经明确的用API的形式来对我们项目的配置进行管理,下面我用postman工具来演示一下这几个接口:

    API接口

    发布配置

    在这里插入图片描述

    获取配置

    在这里插入图片描述

    删除配置

    在这里插入图片描述
    对应的我们可以在图形化界面观察我们通过接口的形式发布的配置。

    服务中如何配置

    1. pom文件中引入Nacos的配置依赖
    <dependency>
        		<groupId>com.alibaba.cloud</groupId>
        		<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
       			 <version>2.2.2.RELEASE</version>
    </dependency>
    
    1. 新建Bootstrap.yml文件,该文件的优先级高于application.yml文件
    spring:
    	cloud:
    		nacos:
    			config:
    				server-addr localhost:8848
    				file-extension: yml
    	application:
    		name: 服务应用名
    	profiles:
    		active: dev
    						
    

    接下来我们去图形化界面创建服务的配置文件,其中dataId的命名来自于配置文件:
    在这里插入图片描述
    配置内容可以自己填写,可以根据环境的不同配置多个配置文件,如:test,prod,dev,但dataId的格式必须相同,我们可以根据配置文件中的spring.profiles.active的值动态切换该服务的配置文件。

    各个环境中的通用配置如何配置?

    在这里插入图片描述

    • 在图形化界面创建一个通用配置目录,不带任何环境的文件,如:order-center.yml。将我们各个环境相同的配置写在这个配置文件中。

    不同工程的通用配置如何配置?

    在这里插入图片描述
    以Order服务与Product服务中的服务注册地址为例,它们的注册地址都是相同的,如何配置它们的通用配置?

    • 在图形化界面新建common.yml文件,在配置内容中写
    spring:
      cloud:
        nacos:
          discovery:
            server-addr: localhost:8848
    
    • 通过在不同工程的Bootstrap.yml中配置如下代码
    spring:
    	cloud:
    		nacos:
    			config:
    				shared-dataids: common.yml,common2.yml
    				refreshable-dataids: common.yml,common2.yml
    				ext-config:
    					- data-id: common3.yml
    					  group: DEFAULT_GROUP
    					  refresh: true
    					- data-id: common4.yml
    					  group: DEFAULT_GROUP
    					  refresh: true  
    

    来引入common.yml公共配置文件,将该配置文件加载进来。
    配置文件的启动顺序:
    在这里插入图片描述
    以工程中Bootstrap.yml中的配置为准,共有的配置以上级为准,上级没有的配置会从下级中取,形成一个互补的顺序。

    展开全文
  • nacos 配置中心

    2021-03-26 15:51:02
    nacos 配置中心 Linux 下载安装:下载速度有点慢,建议用手机开5G下载 添加数据库信息—数据库持久化 1、执行conf/nacos-mysql.sql 文件 2、修改 application.properties文件 nacos.core.auth.caching.enabled=true...

    nacos 配置中心

    Linux 下载安装:下载速度有点慢,建议用手机开5G下载

    添加数据库信息—数据库持久化

    1、执行conf/nacos-mysql.sql 文件
    2、修改 application.properties文件
    	nacos.core.auth.caching.enabled=true#数据库持久化
    	#权限控制
    	nacos.core.auth.enabled=true
        spring.datasource.platform=mysql
        db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
        db.user.0=nacos
        db.password.0=nacos
    

    启动nacos

    *启动命令 sh startup.sh -m standalone

    登陆配置中心添加配置

    在这里插入图片描述

    Data ID :项目名称(spring.application.name)+ 版本(spring.profiles.active)+文件后缀
    

    spring Cloud 配置

    添加 bootstrap.yml 微服务项目先加载该文件

    spring:
      profiles:
        active: dev
      application:
        name: nacos
      cloud:
        nacos:
          discovery:
            register-enabled: true
            weight: 1
            server-addr: 127.0.0.1:8848 #服务注册地址(nacos默认为8848端口)
          config:
            server-addr: 127.0.0.1:8848 #服务注册地址(nacos默认为8848端口)
            file-extension: yaml
            #权限配置
            enable: true
            username: nacos
            password: nacos
    
    server:
      port: 9000
    

    pom 配置

    		<dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>2.0.3.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
    	</dependency>
    

    配置类添加 @RefreshScope

    展开全文
  • nacos配置中心

    2020-05-24 18:22:03
    这里写自定义目录标题综述什么是Nacos下载Nacos项目Maven项目配置Nacos里新建配置命名空间Nacos持久化 综述 最近项目升级使用Spring Cloud Alibaba,在使用nacos的时候发现官方文档写的非常含糊,网上的资料坑也很多...

    综述

    最近项目升级使用Spring Cloud Alibaba,在使用nacos的时候发现官方文档写的非常含糊,网上的资料坑也很多,特整理一份给初学者使用
    但是对于初学者来说看官网还是非常重要的
    https://nacos.io/zh-cn/docs/what-is-nacos.html

    什么是Nacos

    说人话就是可以把各个服务都注册到注册中心,服务之间就可以使用nacos互相调用;原本在项目的配置文件可以放到nacos中统一管理,本文主要讲配置中心的使用

    下载Nacos

    https://github.com/alibaba/nacos/releases
    在nacos/bin文件夹下执行
    启动命令:nohup sh startup.sh -m standalone &
    停止命令:./shutdown.sh

    启动成功后访问http://127.0.0.1:8848/nacos/index.htm输入账号密码,默认都是nacos

    可以执行下面两个命令看看配置中心是否可用
    新写了一个配置文件,项目有时候会读取不到,可以重启nacos试试

    curl -X POST “http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=example.properties&group=DEFAULT_GROUP&content=HelloWorld”

    curl -X POST “http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=example.properties&group=DEFAULT_GROUP&content=HelloWorld”

    项目Maven

    	<!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-starter-alibaba-nacos-discovery -->
    	<dependency>
    		<groupId>com.alibaba.cloud</groupId>
    		<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    		<version>2.1.1.RELEASE</version>
    	</dependency>
    	<dependency>
    		<groupId>com.alibaba.cloud</groupId>
    		<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    		<version>2.1.1.RELEASE</version>
    	</dependency>
    

    项目配置

    需要在原本 application.yml 处新建一个 bootstrap.yml
    文件,它会比application.yml文件先执行。

    项目配置使用需要一个格式
    官方原文
    在 Nacos Spring Cloud 中,dataId 的完整格式如下:

    ${prefix}-${spring.profile.active}.${file-extension}
    

    prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置。
    spring.profile.active 即为当前环境对应的 profile,详情可以参考 Spring Boot文档。 注意:当 spring.profile.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 prefix.{prefix}.{file-extension}
    file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。

    翻译一下就是需要一个三段的格式

    server-name-dev.yml

    这个名字就是后面要在nacos里创建的 Data ID

    spring:
    
      application:
        name: service-name  #这里就是你要注册到nacos里的服务名字
    
      cloud:
        nacos:
          discovery:
            server-addr: 127.0.0.1:8848
          config:
            server-addr: 127.0.0.1:8848
            file-extension: yml  #这个代表你的文件类型
      profiles:
        active: dev  #这个代表你的环境  开发环境dev 
    

    Nacos里新建配置

    进入nacos页面
    在这里插入图片描述
    在这里插入图片描述
    这里的Data ID就是上面拼出来的名字
    类型选择YAML
    下面就可以把原来application.yml里的配置信息放到这里来了

    拖到下面点击发布

    命名空间

    如果服务多起来,可以给服务注册和配置中心配一个命名空间
    除了命名空间,还有Group和 归属应用 可以配置
    命名空间看过去最直观

    在这里插入图片描述

    新增一个命名空间再切换到配置列表,顶部就可以切换命名空间
    bootstrap.yml 里只需要多配一行代码就能使用

    spring:
    
      application:
        name: service-name  #这里就是你要注册到nacos里的服务名字
    
      cloud:
        nacos:
          discovery:
            server-addr: 127.0.0.1:8848
            namespace: xxxxxxxx-xxxx-4517-b589-4e45eedfc111 #这里就是填命名空间id 
          config:
            server-addr: 127.0.0.1:8848
            file-extension: yml  #这个代表你的文件类型
            namespace: xxxxxxxx-xxxx-4517-b589-4e45eedfc111
      profiles:
        active: dev  #这个代表你的环境  开发环境dev 
    

    Nacos持久化

    目前Nacos仅支持Mysql数据库,且版本要求:5.6.5+
    nacos/conf目录里有一个初始化文件:nacos-mysql.sql
    创建一个数据库 执行这个sql
    打开同目录的 application.properties 文件,在底部新增配置,
    注意修改数据连接

    spring.datasource.platform=mysql
    
    db.num=1
    db.url.0=jdbc:mysql://127.0.0.1:3306/mynacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=root
    db.password=123456
    

    重启项目再配置的文件就会存储到 mynacos中的数据库表 config_info里面

    Nacos通过集中式存储来保证数据的持久化,同时也为Nacos集群部署奠定了基础

    展开全文
  • nacos配置中心demo代码.zip
  • Nacos配置中心源码分析.jpg
  • Nacos配置中心.7z

    2021-02-05 09:35:59
    阿里巴巴nacos安装包官网下载太慢了,半天都没反应,这是我找到的安装包,亲测可用,上传到这里供大家下载,nacos配置中心,大神必备神器!
  • 初识Nacos 配置中心

    2019-10-25 16:23:29
    初识Nacos 配置中心 文章目录初识Nacos 配置中心文档依赖Properties类型创建配置配置文件程序UserUserServiceUserController测试结果Yaml类型创建配置配置文件测试结果 文档 SpringCloud官方文档: ...
  • # nacos 配置中心服务地址 nginx 代理的地址 # 默认 ${spring.cloud.nacos.server-addr} # server-addr: file-extension: yaml prefix: ${spring.application.name} # dataID ${prefix}-${spring.profiles....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,758
精华内容 3,103
关键字:

nacos配置中心