SpringCloudAlibaba基础学习--nacos分布式配置中心

  • 发布配置
  1. 安装nacos  
    安装步骤:  https://blog.csdn.net/xiaobo5264063/article/details/105149955 
    访问  http://127.0.0.1:8848/nacos
  2. 发布配置
     选择配置管理-->配置列表-->'+' 

     
     Data ID: 服务名称(Spring.application.name名称)+版本('-'dev、test、pre、pro可为空)+格式('.'Properties、Yaml等)
     Group:默认
     选择-->'发布'
  3. 发布成功

  
 

  •   项目整合
     
  1.   创建项目
     pom.xml新增配置: 
     <!-- nacos整合服务注册与发现-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>0.2.2.RELEASE</version>
            </dependency>
            <!-- nacos整合分布式配置中心-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>0.2.2.RELEASE</version>
            </dependency>

     
     
  2.   配置文件
     resources/application.yml: 
    server:
      port: 9001

     resources/bootstrap.yml: 
    spring:
      application:
        ###服务的名称
        name: pitch-member
      cloud:
        nacos:
          discovery:
            ###nacos注册地址
            server-addr: 127.0.0.1:8848
            enabled: true
          config:
            ###配置中心连接地址
            server-addr: 127.0.0.1:8848
            ###分组
            group: DEFAULT_GROUP
            ###nacos上Data ID配置文件类型
            file-extension: properties
    注意:  spring.application.name需要与Data ID服务名称一致   group: 如果创建时选择默认组名这里就不用改
     
    bootstrap.yml 用于应用程序上下文的引导阶段,优先加载。
    application.yml 由父Spring ApplicationContext加载。
  3.   创建测试类
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.cloud.context.config.annotation.RefreshScope;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    @RefreshScope  // 开启当前类的动态刷新
    public class TestController {
    
        @Value("${pitch.username}")
        private String username;
    
        @GetMapping("/name")
        public String name() {
            return "hello -"+username;
        }
    }

     
  4.   启动类
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    /**
     * Hello world!
     *
     */
    @SpringBootApplication
    public class AppMember {
        public static void main( String[] args ) {
            SpringApplication.run(AppMember.class);
        }
    }
    

     
     
  5.   测试访问
     http://127.0.0.1:9001/name
     更新nacos配置再访问
  •   多环境配置文件读取
     
  1.   登录nacos
     创建pitch-member-dev.properties文件 
     
     
     创建pitch-member-prd.properties文件 

     
     
  2.   配置文件
     bootstrap.yml配置如下
    spring:
      application:
        ###服务的名称
        name: pitch-member
      cloud:
        nacos:
          discovery:
            ###nacos注册地址
            server-addr: 127.0.0.1:8848
            enabled: true
          config:
            ###配置中心连接地址
            server-addr: 127.0.0.1:8848
            ###分组
            group: DEFAULT_GROUP
            ###nacos上Data ID配置文件类型
            file-extension: properties
      profiles:
        ### 区分多环境配置文件读取
        active: dev
  3. 启动  
    读取pitch-member-dev.properties的配置 访问 http://127.0.0.1:9001/name
     

 

  1. 导入数据到数据库
    将nacos/conf目录下nacos-mysql.sql数据文件保存到mysql
     
  2.  配置数据库
     nacos/config目录的application.properties新增配置如下
    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=root
    db.password=123456
    目前只支持mysql5.6.5+版本
  3.   启动nacos
     测试新增配置,并查看config_info表数据。


 

  •   nacos配置中心集群搭建
     
     
  1.   原理

      订单服务启动时,默认会和其中一台建立长连接(如:127.0.0.1:8848),并读取配置。
      当nacos8848不可用时,此时就会转移到nacos8849上。
      
     
  2. 项目配置
     在bootstrap.yml配置如下:
    spring:
      application:
        ###服务的名称
        name: pitch-member
      cloud:
        nacos:
          discovery:
            ###nacos注册地址  集群
            server-addr: 127.0.0.1:8848,127.0.0.1:8849
            enabled: true
          config:
            ###配置中心连接地址  集群
            server-addr: 127.0.0.1:8848,127.0.0.1:8849
            ###分组
            group: DEFAULT_GROUP
            ###nacos上Data ID配置文件类型
            file-extension: properties
     
  3.  测试 
    启动127.0.0.1:8848
    启动127.0.0.1:8849 
    启动订单服务  
     
     
    停止8848的服务,在修改8849的配置.......  
     
     
  4. sucesss
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值