zoukankan      html  css  js  c++  java
  • nacos系列 (nacos整合springcloud)

    nacos与springcloud集成

    版本对应关系参考:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明

    springcloud各版本区别:

    常见版本号说明

      举个瓜:2.0.3 RELEASE

      2:主版本号,当功能模块有较大更新或者整体架构发生变化时,主版本号会更新

      0:次版本号。次版本表示只是局部的一些变动。

      2:修改版本号。一般是bug的修改或者是小的变动

      RELEASE:希腊字母版本号。此版本号用户标注当前版本的软件处于哪个开发阶段

    希腊字母版本号

      Base:设计阶段。只有相应的设计没有具体的功能实现。

      Alpha:软件的初级版本。基本功能已经实现,但存在较多的bug。

      Bate:相对于Alpha已经有了很大的进步,消除了严重的BUG,但还存在一些潜在的BUG,还需要不断测试。

      RELEASE:最终版本,没有太大的问题。

    SpringCloud的版本号

    1)为什么springcloud版本用的是单词而不是数字呢?

        设计的目的是为了更好的管理每个SpringCloud子项目的清单,避免自己的版本号与子项目的版本号混淆。

    2)有什么规则么?

        (常用了英国伦敦地铁站的名称来命名)首字母越靠后表示版本号越大

    3)关于版本发布说明?

        BUILD-XXX      开发版    开发团队内部使用,不是很稳定

        GA          稳定版    相比于开发版,基本上可以使用了

        PRE(M1、M2)    里程碑版   主要是修复了一些BUG的版本,一个GA后通常有多个里程碑版

        RC          候选发布版  该阶段的软件类似于最终版的一个发行观察期,基本只修复比较严重的BUG

        SR          正式发布版  ~~~~这个就没啥好说啦

    springcloud alibaba

    1. 搭建环境

    配置注册和服务发现同时配置引入

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>2.2.3.RELEASE</version>
            </dependency>
    
        
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>2.2.3.RELEASE</version>
            </dependency>
    
    2. 配置扫描

    注意:

    @NacosValue : 配置配置类上加扫描配置文件路径采用获取最新值

    @Value + @RefreshScope : 这个是springcloud中获取最新配置属性值

    以上两个注解都可以设置默认值

    bootstrap.properties配置

    spring.cloud.nacos.config.server-addr=127.0.0.1:8848
    spring.application.name=huhy
    spring.cloud.nacos.config.file-extension=properties
    #spring.cloud.nacos.config.file-extension=yaml
    

    在 Nacos Spring Cloud 中,dataId 的完整格式如下:

    ${prefix}-${spring.profiles.active}.${file-extension}
    
    • prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置。
    • spring.profiles.active 即为当前环境对应的 profile,详情可以参考 Spring Boot文档注意:当 spring.profiles.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 ${prefix}.${file-extension}
    • file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 propertiesyaml 类型。
    @RestController
    @RefreshScope
    public class NacosConfigController {
    
        @Value("${useLocalCache:false}")
        private boolean useLocalCache;
    
        @Value("${user.nickname}")
        private String nickname;
    
        @NacosValue(value = "${user.address:henan}",autoRefreshed = true)
        private String address;
        /**
         * http://localhost:8080/get
         */
        @RequestMapping("/get")
        public boolean get() {
            return useLocalCache;
        }
    
        @RequestMapping("/get2")
        public String get2() {
            return nickname  + address;
        }
    }
    
    3. 注册服务

    在集成springboot中介绍过,在cloud版本中,只需要使用@EnableDiscoveryClient注解就可以了

    @SpringBootApplication
    @EnableDiscoveryClient
    public class ConfigControllerApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(ConfigControllerApplication.class, args);
        }
    }
    
    

    注意: @EnableDiscoveryClient 注解必须引入 spring-cloud-starter-alibaba-nacos-discovery ,不引人代码不会报错,注册服务不会成功

    hhy_0602@163.com
  • 相关阅读:
    Hook钩子程序
    KMeans笔记 K值以及初始类簇中心点的选取
    自己用C#写的一个俄罗斯方块的小程序(附源代码)。
    那些帮助你成为优秀前端工程师的讲座——《JavaScript篇》
    Mac技巧合集第二期
    WCF增加UDP绑定(应用篇)
    第一个MVC4 Web应用程序
    jQuery的页面加载事件
    通过网页进行 iOS 应用内部分发
    sql count效率
  • 原文地址:https://www.cnblogs.com/huhongy/p/14822076.html
Copyright © 2011-2022 走看看