zoukankan      html  css  js  c++  java
  • Cloud Alibaba --Nacos

    Cloud  Alibaba --Nacos

    简单一句话:Nacos就是注册中心 + 配置中心的组合,相当于Eureka + config + Bus;

    Nacos官网:https://nacos.io/zh-cn/docs/what-is-nacos.html

    下载安装:github下载太慢,推荐百度网盘下载(1.1.4):

    zip:

    链接:https://pan.baidu.com/s/1pJL1dmABECVpPAwyFDJvqg
    提取码:4otz

    gz:

    链接:https://pan.baidu.com/s/1EJYpX-1ZwSRezIFfNQUQ0Q
    提取码:vsmz

    安装完成启动Nacos

    访问:http://localhost:8848/nacos

     默认账号:nacos; 密码:nacos

    一、Nacos服务注册与发现

    maven依赖

    <dependency> 
        <groupId>com.alibaba.cloud</groupId> 
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> 
    </dependency>

    其他项目可能用上的依赖:

     <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-actuator</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <scope>runtime</scope>
                <optional>true</optional>
            </dependency>
    
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>
    View Code

    yml配置:

    server:
      port: 9001
    
    
    spring:
      application:
        name: cloud-alibaba-nacos-provider
      cloud:
        nacos:
          discovery:
            server-addr: localhost:8848
    management:
      endpoints:
        web:
          exposure:
            include: '*'

    有关Nacos Discovery Starter配置的更多信息

    组态默认值描述

    服务器地址

    spring.cloud.nacos.discovery.server-addr

     

    Nacos服务器侦听器的IP和端口

    服务名称

    spring.cloud.nacos.discovery.service

    ${spring.application.name}

    命名当前服务

    重量

    spring.cloud.nacos.discovery.weight

    1

    值范围:1到100。值越大,重量越大。

    网卡名称

    spring.cloud.nacos.discovery.network-interface

     

    如果未指定IP地址,则注册的IP地址是网卡的IP地址。如果也未指定,默认情况下将使用第一个网卡的IP地址。

    注册IP地址

    spring.cloud.nacos.discovery.ip

     

    最高优先级

    注册端口

    spring.cloud.nacos.discovery.port

    -1

    默认情况下将自动检测。不需要配置。

    命名空间

    spring.cloud.nacos.discovery.namespace

     

    一个典型的场景是隔离针对不同环境的服务注册,例如测试和生产环境之间的资源(配置,服务等)隔离。

    快捷键

    spring.cloud.nacos.discovery.access-key

     

    阿里云帐户访问密钥

    密钥

    spring.cloud.nacos.discovery.secret-key

     

    阿里云账户密钥

    元数据

    spring.cloud.nacos.discovery.metadata

     

    您可以使用地图格式为服务定义一些元数据

    日志文件名

    spring.cloud.nacos.discovery.log-name

       

    集群名称

    spring.cloud.nacos.discovery.cluster-name

    DEFAULT

    Nacos的群集名称

    终点

    spring.cloud.nacos.discovery.endpoint

     

    特定服务在特定区域中的域名。您可以使用该域名动态检索服务器地址

    是否集成色带

    ribbon.nacos.enabled

    true

    在大多数情况下设置为true

    启用Nacos手表

    spring.cloud.nacos.discovery.watch.enabled

    true

    设置为false以关闭手表

    启动类添加:@EnableDiscoveryClient

     服务提供者(provider)与服务消费者配置基本一样参照上面,只是配置的服务名字不一样

    spring-cloud-starter-alibaba-nacos-discovery 默认集成了Ribbon

     因此服务消费者(consumer)可以通过RestTemplate + ribbon 做负载调用服务

    二、Nacos config 统一配置中心

    maven依赖:

     <!--alibaba-nacos-config-->
            <dependency>
                <groupId> com.alibaba.cloud </groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            </dependency>

    bootstrap.yml:

    server:
      port: 3377
    
    
    spring:
      application:
        name: nacos-config-client
      cloud:
        nacos:
          discovery:
           # nacos 服务注册中心地址
            server-addr: localhost:8848
          config:
          # nacos 作为配置中心的地址
            server-addr: localhost:8848
            # 指定yaml格式的配置方式
            file-extension: yaml

    application.yml

    spring:
      profiles:
        active: dev

    启动类添加:@EnableDiscoveryClient

    controller:

    @RestController
    @RefreshScope // 支持Nacos的动态刷新功能
    public class ConfigClientController {
    
        @Value("${config.info}")
        private String configInfo;
    
        @GetMapping("/config/info")
        public String getConfigInfo(){
            return configInfo;
        }
        
    }

    在Nacos中添加配置文件:

    Data ID文件命名规范:

     

     启动项目看看能不能获取到配置信息:

    自定义命名空间:

    命名空间用于隔离不同租户的配置。在不同的命名空间中,组和数据ID可以相同。命名空间的典型场景是隔离不同环境的配置,例如,开发/测试环境与生产环境(配置和服务等)之间的隔离。

    如果未指定名称空间,则使用Nacos的“公共”名称空间${spring.cloud.nacos.config.namespace}。您还可以通过以下方式指定自定义名称空间:

    spring.cloud.nacos.config.namespace = b3404bc0-d7dc-4855-b519-570ed34b62d7

    此配置必须在bootstrap.properties文件中。的值spring.cloud.nacos.config.namespace是名称空间的ID,可以从Nacos控制台中检索ID的值。添加配置时,请勿选择其他名称空间。否则,将无法正确检索配置。

     

     nacos config更多配置参数如下:

    组态默认值描述

    服务器地址

    spring.cloud.nacos.config.server-addr

     

    Nacos服务器侦听器的IP和端口

    来自Nacos配置的Dataid

    spring.cloud.nacos.config.name

     

    首先使用前缀,然后使用名称,最后使用spring.application.name

    来自Nacos配置的Dataid

    spring.cloud.nacos.config.prefix

     

    首先使用前缀,然后使用名称,最后使用spring.application.name

    编码nacos配置内容

    spring.cloud.nacos.config.encode

     

    编码nacos配置内容

    GROUP for Nacos配置

    spring.cloud.nacos.config.group

    DEFAULT_GROUP

    GROUP for Nacos配置

    nacos config dataId的后缀,也是config内容的文件扩展名。

    spring.cloud.nacos.config.fileExtension

    properties

    nacos config dataId的后缀,以及config内容的文件扩展名(现在支持属性或yaml(yml))

    从nacos获取配置超时

    spring.cloud.nacos.config.timeout

    3000

    从nacos获取配置超时

    终点

    spring.cloud.nacos.config.endpoint

     

    终点

    命名空间

    spring.cloud.nacos.config.namespace

     

    命名空间

    快捷键

    spring.cloud.nacos.config.accessKey

     

    阿里云帐户访问密钥

    密钥

    spring.cloud.nacos.config.secretKey

     

    阿里云账户密钥

    Nacos Server的上下文路径

    spring.cloud.nacos.config.contextPath

     

    Nacos Server的上下文路径

    集群名称

    spring.cloud.nacos.config.clusterName

     

    集群名称

    共享配置的Dataid

    spring.cloud.nacos.config.sharedDataids

     

    共享配置的数据标识,用“,”分隔

    共享配置的动态刷新dataid

    spring.cloud.nacos.config.refreshableDataids

     

    共享配置的动态刷新数据标识,用“,”分隔

    自定义dataid

    spring.cloud.nacos.config.extConfig

     

    这是一个列表,由ConfigPOJO 建立Config具有3个属性dataIdgrouprefresh

     

    自定义组:

    {spring.cloud.nacos.config.group}未定义配置时,默认情况下使用DEFAULT_GROUP 。如果需要定义自己的组,则可以在以下属性中进行定义:

    spring.cloud.nacos.config.group = DEVELOP_GROUP

  • 相关阅读:
    9 jmeter之检查点
    8 jmeter之集合点
    7 jmeter之参数化
    6 jmeter元件的作用域与执行顺序
    5 jmeter性能测试小小的实战
    4 jmeter badboy脚本开发技术详解
    3 jmeter的两种录制方法
    2 jmeter常用功能介绍-测试计划、线程组
    Errors occurred during the build. Errors running builder 'DeploymentBuilder' on project
    常见异常总结
  • 原文地址:https://www.cnblogs.com/dw3306/p/12863699.html
Copyright © 2011-2022 走看看