若依前后端分离版集成nacos

news2024/12/23 4:09:56

        根据公司要求,需要将项目集成到nacos中,当前项目是基于若依前后端分离版开发的,若依的版本为3.8.3,若依框架中整合的springBoot版本为2.5.14。Nacos核心提供两个功能:服务注册与发现,动态配置管理。


一、服务注册与发现

1、引入pom依赖

     </dependency>-->
        <!-- 在SpringBoot 2.4.x的版本之后,对配置文件加载方式进行了重构,需要导入如下的依赖;
        详情见官网:https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#config-first-bootstrap -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.0.1</version>
        </dependency>

        <!-- 服务注册与发现依赖 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>2021.1</version>
        </dependency>

2、bootstrap.yml配置

spring:
  # nacos配置
  cloud:
    nacos:
      discovery:
        server-addr: 10.2.XX.XX:8848
    compatibility-verifier:
      enabled: false

3、添加注解

在项目启动类上添加 @EnableDiscoveryClient 注解:

@EnableDiscoveryClient
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class RiskExamineApplication
{
    public static void main(String[] args)
    {
        // System.setProperty("spring.devtools.restart.enabled", "false");
        SpringApplication.run(RiskExamineApplication.class, args);
        System.out.println("(♥◠‿◠)ノ゙  若依启动成功   ლ(´ڡ`ლ)゙  \n" +
                " .-------.       ____     __        \n" +
                " |  _ _   \\      \\   \\   /  /    \n" +
                " | ( ' )  |       \\  _. /  '       \n" +
                " |(_ o _) /        _( )_ .'         \n" +
                " | (_,_).' __  ___(_ o _)'          \n" +
                " |  |\\ \\  |  ||   |(_,_)'         \n" +
                " |  | \\ `'   /|   `-'  /           \n" +
                " |  |  \\    /  \\      /           \n" +
                " ''-'   `'-'    `-..-'              ");
    }
}

4、验证

        项目启动后,登录nacos,在服务列表中,点击查询即可看到注册到nacos的服务,如下图:

服务名默认为yml配置里spring.application.name的名称,也可通过spring.cloud.nacos.discovery.service配置指定。

遇到问题:Your project setup is incompatible with our requirements due to following reasons:
- Spring Boot [2.5.14] is not compatible with this Spring Cloud release train

Change Spring Boot version to one of the following versions [2.3.x, 2.4.x] 


***************************
APPLICATION FAILED TO START
***************************

Description:

Your project setup is incompatible with our requirements due to following reasons:

- Spring Boot [2.5.14] is not compatible with this Spring Cloud release train


Action:

Consider applying the following actions:

- Change Spring Boot version to one of the following versions [2.3.x, 2.4.x] .
You can find the latest Spring Boot versions here [https://spring.io/projects/spring-boot#learn]. 
If you want to learn more about the Spring Cloud Release train compatibility, you can visit this page [https://spring.io/projects/spring-cloud#overview] and check the [Release Trains] section.
If you want to disable this check, just set the property [spring.cloud.compatibility-verifier.enabled=false]

解决办法:出现这个问题是由于springBoot和springCloud版本不一致导致的,如果是自己手动搭建的框架,可以根据提示将springBoot版本降到[2.3.x, 2.4.x];但是由于我用的是若依的框架,担心将springBoot版本降低后会引起其它问题,所以根据提示设置spring.cloud.compatibility-verifier.enabled=false这个属性,但是引入后发现配置不生效,最后根据研究一番之后,根据网上的提示需将配置文件名称application.yml改为bootstrap.yml,然后再引入依赖spring-cloud-starter-bootstrap 即可解决。

注意:如果只需要nacos的服务注册与发现功能,不用服务配置功能的话,一定要将服务配置的pom依赖(spring-cloud-starter-alibaba-nacos-config)去掉,否则启动时会报错:currentServerAddr:http://localhost:8848, err : connect timed out 。

二、服务动态配置与服务注册发现

1、引入pom依赖

  <!-- nacos -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2021.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.0.1</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>2021.1</version>
        </dependency>

2、bootstrap.yml配置

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 124.70.XX.XX:32389
        namespace: zs-smart
        group: dev
      config:
        server-addr: 124.70.XX.XX:32389
        namespace: zs-smart
        group: dev
        name: zs-smart
        file-extension: yaml
    compatibility-verifier:
      enabled: false

3、nacos配置

1)新建命名空间

 2) 新建配置

打开配置列表,选择刚刚创建的zs-smart,点击右上角的“+”号,如下图:

3)填写配置

然后启动项目,如果项目启动成功,即说明配置没问题! 

参考文章:Springboot集成Nacos2「服务注册与发现」 - 知乎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/344398.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【django项目开发】用户登录后缓存权限到redis中(十)

这里写目录标题一、权限的数据的特点二、首先settings.py文件中配置redis连接redis数据库一、权限的数据的特点 需要去数据库中频繁的读和写&#xff0c;为了项目提高运行效率&#xff0c;可以把用户的权限在每次登录的时候都缓存到redis中。这样的话&#xff0c;权限判断的中…

基于投票策略的室内家具检测:VoteNet、BRNet 最全总结

文章目录一、基本概述二、VoteNet三、BRNet四、最新研究成果一、基本概述 最近几年&#xff0c;基于点云的3D目标检测是自动驾驶场景研究的热点。但是&#xff0c;自动驾驶主要聚焦于室外场景。本文&#xff0c;我们主要介绍两篇文章&#xff08;VoteNet&#xff0c;BRNet&…

HTML第一章总结

<h1~h6>标题标签 <br />换行标签&#xff08;单&#xff09; <p>分段标签 <strong>加粗标签 <em>倾斜标签 <del>删除线标签 <ins>下划线标签 <div>独占一行的布局标签 <span>进行分割的布局标签 <img>图片标签&a…

Go-micro[windows]安装以及踩坑

一.首先安装protochttps://github.com/protocolbuffers/protobuf/releases进入网址&#xff0c;点击tag&#xff0c;然后选择v3版本进入之后找到随后下载安装然后将protoc解压缩到任意目录&#xff08;自己选&#xff09;再将protoc/bin的路径放置环境变量中二.获取protoc-gen-…

RK3568 UBOOT的问题解决案例

一、UBOOT下的波特率 原始的波特率为1500000,串口工具虽然可以设置任意波特率&#xff0c;但工作时不正常。 输入不了。本文描述如何修改成115200。 二、确认UBOOT的配置 ./build.sh uboot processing option: uboot Start building uboot TARGET_UBOOT_CONFIGrk3568## make …

【C++】二叉树之力扣经典题目1——详解二叉树的递归遍历,二叉树的层次遍历

如有错误&#xff0c;欢迎指正。 如有不理解的地方&#xff0c;可以私信问我。 文章目录题目1&#xff1a;根据二叉树创建字符串题目实例思路与解析代码实现题目2&#xff1a;二叉树的层序遍历题目思路与解析代码实现题目1&#xff1a;根据二叉树创建字符串 点击进入题目链接—…

C++——多态|虚函数|重写|虚表

文章目录1. 多态的概念1.1 概念2. 多态的定义及实现2.1多态的构成条件2.2 虚函数2.3虚函数的重写虚函数重写的三个例外&#xff1a;2.4 普通调用和多态调用&#xff1a;2.5 C11 override 和 final2.6 重载、虚函数的覆盖(重写)、隐藏(重定义)的对比3. 抽象类(有关纯虚函数)3.1 …

互联网新时代要到来了(一)什么是Web3.0?

什么是Web3.0? tips&#xff1a;内容来自百度百科、知乎、搜狐新闻、李留白公众号、CSDN「Meta.Qing」博客等网页 什么是Web3.0?1.什么是Web3.0&#xff08;概念介绍&#xff09;&#xff1f;2.Web3.0简单理解3.Web3.0的技术特点4.Web3.0项目1.什么是Web3.0&#xff08;概念…

greenDao的使用文档

介绍&#xff1a;greenDAO 是一款轻量级的 Android ORM 框架&#xff0c;将 Java 对象映射到 SQLite 数据库中&#xff0c;我们操作数据库的时候&#xff0c;不在需要编写复杂的 SQL语句&#xff0c; 在性能方面&#xff0c;greenDAO 针对 Android 进行了高度优化&#xff0c; …

Ubuntu 20中安装snaphu

Ubuntu 20中安装snaphu0 前言1 snaphu安装步骤1.1 在控制台用命令行安装1.2 在官网下载安装包0 前言 snaphu是一个解缠软件。基于欧空局的SNAP snaphu的官网&#xff1a;https://web.stanford.edu/group/radar/softwareandlinks/sw/snaphu/ 1 snaphu安装步骤 大致有两种 在…

微软支持的ChatGPT激增,但不要低估苹果和谷歌

微软和 OpenAI 可能在 AI 聊天机器人爆炸式增长的市场中具有先发优势&#xff0c;但不要排除其他一些可以访问大量 AI 训练数据的科技巨头&#xff0c;例如 Apple 和 Google。 通过其对 ChatGPT 开发商 OpenAI 的早期和持续支持&#xff0c;微软在AI 军备竞赛中目前处于领先地…

鲸探玩家狂收往期数藏,2023年数藏二级市场的紧箍咒可能松动了?

图片来源&#xff1a;由无界AI绘画工具生成2月初&#xff0c;数藏发行平台鲸探更新了用户服务协议&#xff0c;更新最受关注的点在于&#xff1a;首次转赠期限从180天调整为90天。此外&#xff0c;有媒体披露&#xff0c;鲸探客服回答用户提问称&#xff0c;非首次转赠也从720天…

ITSS认证分为几个级别,哪个级别最高

​一、什么是ITSS ITSS( 信息技术服务标准&#xff0c;简称ITSS)是国内第一套成体系和综合配套的信息技术服务标准库&#xff0c;全面规范了IT服务产品及其组成要素&#xff0c;用于指导实施标准化和可信赖的IT服务。 ITSS是在工业和信息化部、国家标准化管理委员会的联合指导下…

Python 之 NumPy 统计函数、数据类型和文件操作

文章目录一、统计函数1. 求平均值 mean()2. 中位数 np.median3. 标准差 ndarray.std4. 方差 ndarray.var()5. 最大值 ndarray.max()6. 最小值 ndarray.min()7. 求和 ndarray.sum()8. 加权平均值 numpy.average()二、数据类型1. 数据存储2. 定义结构化数据3. 结构化数据操作三、…

儿童及婴幼儿产品出口美国CPC和欧洲CE认证测试标准总结

消费者越来越关注他们选购的产品安全性和质量&#xff0c;尤其是儿童和婴幼儿产品。若产品不符合安全标准和法规要求&#xff0c;可能对婴儿、幼儿和儿童造成威胁。儿童和婴幼儿产品的制造商及零售商必须严格遵守当地市场法规&#xff0c;证明其产品的安全性和质量可以满足消费…

为什么重写equals还要重写hashcode方法

目录equals方法hashCode方法为什么要一起重写&#xff1f;总结面试如何回答重写 equals 时为什么一定要重写 hashCode&#xff1f;要想了解这个问题的根本原因&#xff0c;我们还得先从这两个方法开始说起。 以下是关于hashcode的一些规定&#xff1a; 两个对象相等&#xff0…

文心ERNIE 3.0 Tiny新升级!端侧压缩部署“小” “快” “灵”!

大家好&#xff0c;今天带来的是有关文心ERNIE 3.0 Tiny新升级内容的文章。 近年来&#xff0c;随着深度学习技术的迅速发展&#xff0c;大规模预训练范式通过一次又一次刷新各种评测基线证明了其卓越的学习与迁移能力。在这个过程中&#xff0c;研究者们发现通过不断地扩大模型…

第七章:Linux最小化搭建环境解说2

配置IP地址&#xff1a;我们先要到网卡配置文件夹里&#xff0c;路径是/etc/sysconfig/network-scripts/&#xff0c;有点长&#xff0c;不过没事&#xff0c;我们要学会习惯&#xff0c;这还是经常用的。然后就是用ls命令查看下面有什么&#xff0c;只有一个文件ifcfg-ens160&…

【位运算问题】Leetcode 136、137、260问题详解及代码实现

Halo&#xff0c;这里是Ppeua。平时主要更新C语言&#xff0c;C&#xff0c;数据结构算法......感兴趣就关注我吧&#xff01;你定不会失望。 &#x1f308;个人主页&#xff1a;主页链接 &#x1f308;算法专栏&#xff1a;专栏链接 我会一直往里填充内容哒&#xff01; &…

sql数据库高级编程总结(一)

1、数学函数&#xff1a;操作一个数据&#xff0c;返回一个结果 &#xff08;1&#xff09;取上限 ceiling 如果有一个小数就取大于它的一个最小整数 列如9.5 就会取到 10 select code,name,ceiling(price) from car &#xff08;2&#xff09;取下限 floor 如果有一个小数就…