2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试

news2024/12/26 21:55:38

文章目录

  • 1、测试项目
  • 2、项目注意事项
  • 3、 测试核心功能
    • 3.1 测试服务调用与负载均衡
    • 3.2 测试配置监听
  • 4、参考文档

1、测试项目

项目地址
nacos-service-a
nacos-service-b

2、项目注意事项

  • 项目初始化可以使用aliyun spring initializer ,以更方便的使用springcloud alibaba的最新微服务组件(避免一些麻烦如springboot springcloud alibaba的版本匹配),网页下载导入或修改IDEA 的默认spring initializer均可
  • 这里选用了springboot3,有一些注意点:需要较高的IDEA 2021+,jdk用的open jdk17,javax相关包改为jakarta的
  • 微服务调用这里直接用RestTemplate,没有引入原spring cloud的open-feign组件,但还是无法避免需要使用原spring cloud的spring-cloud-starter-loadbalancer组件(因为没有配置原生spring cloud 大pom,需要指定一下版本号),否则nacos-service-b调用nacos-service-a无法解析域名UnknownHostException
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>${spring-cloud-alibaba.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client  2.2.1版本无法兼容-->
            <dependency>
                <groupId>com.alibaba.nacos</groupId>
                <artifactId>nacos-client</artifactId>
                <version>2.3.0-BETA</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
  • 如上引入的springcloud alibaba引入的nacos-client版本是2.2.1,并不能兼容nacos-server 2.3.0BATA,故需要锁定nacos-client的版本为2.3.0-BETA

3、 测试核心功能

3.1 测试服务调用与负载均衡

nacos-service-b(只启动一个实例)的http://localhost:9000/remote-port接口远程调用nacos-service-a(启动了两个实例,注意配置文件配置的springboot动态端口server.port=${random.int(8000,8005)})的/port接口 (默认为轮询负载均衡策略)
在这里插入图片描述
在这里插入图片描述

3.2 测试配置监听

nacos页面新增配置,对应项目配置的spring.config.import=nacos:nacos-config-example.properties?refresh=true
在这里插入图片描述
监听到keys changed后refresh
在这里插入图片描述
nacos-service-a的两个实例的http://localhost:8004/user都拿到了新值
在这里插入图片描述
在这里插入图片描述

4、参考文档

spring-cloud-alibaba GIT仓库

spring-cloud-alibaba 官方文档

nacos官方手册

Nacos 架构 & 原理 👈源码解读重点参考

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

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

相关文章

Maven依赖管理项目构建工具的安装与配置

本篇来自尚硅谷的笔记&#xff0c;在线视频观看&#xff1a;Maven依赖管理项目构建工具&#xff0c;更多笔记欢迎访问&#xff1a;小熊学Java 一、Maven简介 1、为什么学习Maven 1.1、Maven是一个依赖管理工具 ①jar 包的规模 随着我们使用越来越多的框架&#xff0c;或者框…

[文件读取]Druid 任意文件读取 (CVE-2021-36749)

1.1漏洞描述 漏洞编号CVE-2021-36749漏洞类型文件读取漏洞等级⭐⭐⭐漏洞环境VULFOCUS攻击方式 描述: 由于用户指定 HTTP InputSource 没有做出限制&#xff0c;可以通过将文件 URL 传递给 HTTP InputSource 来绕过应用程序级别的限制。攻击者可利用该漏洞在未授权情况下&…

63基于matlab的生物地理的优化器(BBO)被用作多层感知器(MLP)的训练器。

基于matlab的生物地理的优化器&#xff08;BBO&#xff09;被用作多层感知器&#xff08;MLP&#xff09;的训练器。粒子群优化&#xff08;PSO&#xff09;、蚁群优化&#xff08;ACO&#xff09;、遗传算法&#xff08;GA&#xff09;、进化策略&#xff08;ES&#xff09;和…

Flutter的Widget, Element, RenderObject的关系

在Flutter中&#xff0c;Widget&#xff0c;Element和RenderObject是三个核心的概念&#xff0c;它们共同构成了Flutter的渲染流程和组件树的基础。下面简要介绍它们之间的关系&#xff1a; 1.Widget Widget是Flutter应用中的基础构建块&#xff0c;是一个配置的描述&#xf…

问界「力压」比亚迪,到底什么是RAEB?

作者 | Amy 编辑 | 德新 本周&#xff0c;一辆AITO问界M5智驾版「骑」上比亚迪海豚的视频引发热议。从视频推测&#xff0c;应该是M5在倒车过程中&#xff0c;猛地加速&#xff0c;一下冲到海豚车顶了。 这样富有戏剧性的视频&#xff0c;很快引爆了各大车友群。 不过在吃瓜…

【教3妹学编辑-mysql】mybatis查询条件遇到的坑及解决方案

2哥 :3妹&#xff0c;今天怎么下班这么晚啊。 3妹&#xff1a;嗨&#xff0c;别提了&#xff0c;今天线上出bug了&#xff0c; 排查了好久。 2哥&#xff1a;啊&#xff0c;什么问题呀&#xff1f; 3妹&#xff1a;我们内部的一个管理系统报错了&#xff0c; 最近排查下来是myb…

智能穿戴AR眼镜主板方案定制_MTK平台AR智能眼镜PCB板开发

AR智能眼镜&#xff0c;是采用了多种技术实现增强现实效果&#xff0c;是将虚拟信息和现实场景相结合的智能设备。 AR智能眼镜硬件上&#xff0c;包括多个传感器、显示装置和处理器等。其中&#xff0c;传感器用于捕捉用户的动作和环境信息&#xff0c;如摄像头、陀螺仪、加速…

支付宝支付==沙盒

地址 登录 - 支付宝 可以看到有买家和卖家账户了 完整代码 https://gitee.com/hebian1994/demo-zhifubao.git

千万富翁分享:消费多少免单多少,电商运营高手实战秘籍拆解

千万富翁分享&#xff1a;消费多少免单多少&#xff0c;电商运营高手实战秘籍拆解 后疫情时代&#xff0c;国内电商圈层进程依然是在高速发展阶段&#xff0c;今年2023年双十一也彻底落下帷幕&#xff0c;但这次相较于往常却没有公布具体的成交规模数据&#xff0c;那么&#x…

安装DevEco Studio时,遇到的ohpm报错(解决)

如上图所示&#xff0c;我试了网上的各种办法&#xff0c;包括官网的文档&#xff0c;运行init.bat也不行。 接下来我说一下我的办法&#xff1a; 我从官网下载安装包后&#xff0c;将bin文件添加在了环境变量里&#xff08;最终安装的位置&#xff0c;但是因为他会自己下载所…

vue:如何把后端传过来的数组的其中一个对象加入新的属性

加入我们是更改数组中的第一个对象&#xff0c;在vue中可以使用$set方法将属性插入到第一个对象中作为属性。 Script部分&#xff1a; <script>export default {data() {return {boxes: [//模拟后端传过来的数组{id:1,name:张三},{id:2,name:李四},{id:3,name:王五},{i…

碳交易机制下考虑需求响应的综合能源系统优化运行(附带Matlab程序)

碳交易机制下考虑需求响应的综合能源系统优化运行&#xff08;附带Matlab程序&#xff09; 仿真平台&#xff1a;MATLABCPLEX 使用的是yalmipcplex求解器完成求解 资源地址&#xff1a; 碳交易机制下考虑需求响应的综合能源系统优化运行&#xff08;附带Matlab程序&#xff09…

基于ssm酒店管理系统

基于ssm酒店管理系统 摘要 基于SSM&#xff08;Spring Spring MVC MyBatis&#xff09;框架的酒店管理系统是一种利用现代化技术手段来提高酒店管理效率和服务质量的信息化管理系统。该系统整合了Spring框架的依赖注入、Spring MVC框架的请求处理和MyBatis框架的持久化操作&a…

3DMAX渲染AO图的三种方法

3DMAX渲染AO图的三种方法 使用Mental Ray渲染AO 1. 我为这个演示制作了一个非常简单的场景。该场景包含一个茶壶、一个盒子和一个球体。我还应用了一些材质&#xff0c;并将渲染引擎设置为Mental Ray。 2. 我还在场景中添加并定位了几个泛光灯。 3. 我选择了Mental Ra…

java基础-数据类型

1、变量 变量就是申请内存来存储值。也就是说&#xff0c;当创建变量的时候&#xff0c;需要在内存中申请空间。 内存管理系统根据变量的类型为变量分配存储空间&#xff0c;分配的空间只能用来储存该类型数据。 因此&#xff0c;通过定义不同类型的变量&#xff0c;可以在内…

CTFSHOW 文件上传

web151 JS前端绕过 直接上传 png的图片马 然后抓包修改为php asystem("ls /var/www/html"); asystem("cat /var/www/html/flag.php"); web152 和151一样的方法也可以实现上传 asystem("ls /var/www/html"); asystem("cat /var/www/html…

将Soildorks模型导入PreScan

首先将Soildworks模型导入到SketchUP中&#xff0c;导入方法如下&#xff1a; 在Soildworks中将模型另存为IFC 2x3 模型 在选项中将单位改成米 在SketchUP中文件选择导入 ifc 文件即可 然后在SketchUP中定义坐标轴 SketchUP中红色的轴为X&#xff0c;绿色的轴为Y&#xff0c;蓝…

Linux操作系统使用及C高级编程-D5Linux shell命令(进程管理、用户管理)

进程管理 查看进程ps 其中ps -eif可显示父进程 实时查看进程top 按q退出 树状图显示进程pstree 以父进程&#xff0c;子进程以树状形式展示 发送信号kill kill -l&#xff1a;查看都有哪些信号 9&#xff1a;进程终止 kill不指定信号&#xff0c;默认发送的是15信号SIGT…

执行力太差的人,如何才能提高执行力?

执行力是计划的落地执行&#xff0c;是按照计划稳步推进&#xff0c;导向结果的能力。不同的人&#xff0c;其执行力有很大的差别。比如说有拖延症的人&#xff0c;基本上是谈不上执行力的&#xff0c;执行力是一个综合体&#xff0c;是多个要素的共同作用。 在企业HR人才测评…

阿里云+宝塔部署项目(Java+React)

阿里云服务器宝塔面板部署项目&#xff08;SpringBoot React&#xff09; 1. 上传所需的文件到服务器 比如jdk包和java项目的jar&#xff1a;这里以上传jar 为例&#xff0c;创建文件夹&#xff0c;上传文件&#xff1b; 在创建的文件夹下上传jar包 上传jdk 2. 配置jdk环境 3.…