美文网首页
nacos2021.1配置踩坑记录

nacos2021.1配置踩坑记录

作者: 板栗炖牛肉 | 来源:发表于2021-08-05 15:44 被阅读0次

    前言

    • 对比官网配置,踩了N个坑,最终还是归纳为版本问题
    • spring 环境
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.4.9</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
    
           <spring-cloud.version>2020.0.3</spring-cloud.version>
    
    • naocs包,这里比较新,踩坑!!!
            <!-- 配置中心 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>2021.1</version>
            </dependency>
    
            <!-- 注册中心 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>2021.1</version>
            </dependency>
    
    

    解决方案

    • 第一个坑,远程配置中心未生效,测试为bootstrap.yml没有生效,添加依赖包
            <!-- bootstrap -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-bootstrap</artifactId>
                <version>3.0.3</version>
            </dependency>
    
    • bootstrap.yml配置
    spring:
      application:
        name: main
      cloud:
        nacos:
          config:
            # 配置文件的环境
            group: remote
            # 配置文件的格式
            file-extension: yaml
            # 配置中心的地址
            server-addr: 127.0.0.1:8848
            #命名空间
            namespace: b14470b8-2099-41c1-8652-8cad015b0b53
            #是否开启配置中心
            enabled: true
    
    
    • 第二个坑,负载均衡未生效,即@LoadBalanced这个注释未生效
        @LoadBalanced
        @Bean
        public RestTemplate restTemplate() {
            return new RestTemplate();
        }
    
    • 添加依赖包
            <!-- 负载均衡-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-loadbalancer</artifactId>
                <version>3.0.3</version>
            </dependency>
    
    • 解决后正常使用服务名请求
     restTemplate.postForObject("http://oss/postFile", valueMap, String.class)
    
    • 最终nacos依赖包
            <!-- 配置中心 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>2021.1</version>
            </dependency>
    
            <!-- 注册中心 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>2021.1</version>
            </dependency>
    
            <!-- 负载均衡-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-loadbalancer</artifactId>
                <version>3.0.3</version>
            </dependency>
    
            <!-- bootstrap -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-bootstrap</artifactId>
                <version>3.0.3</version>
            </dependency>
    

    相关文章

      网友评论

          本文标题:nacos2021.1配置踩坑记录

          本文链接:https://www.haomeiwen.com/subject/bsimvltx.html