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

文章目录

  • 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
    
        
            
                org.springframework.boot
                spring-boot-dependencies
                ${spring-boot.version}
                pom
                import
            
            
                com.alibaba.cloud
                spring-cloud-alibaba-dependencies
                ${spring-cloud-alibaba.version}
                pom
                import
            
            
            
                com.alibaba.nacos
                nacos-client
                2.3.0-BETA
            
        
    
  • 如上引入的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接口 (默认为轮询负载均衡策略)
2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试_第1张图片
2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试_第2张图片

3.2 测试配置监听

nacos页面新增配置,对应项目配置的spring.config.import=nacos:nacos-config-example.properties?refresh=true
2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试_第3张图片
监听到keys changed后refresh
2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试_第4张图片
nacos-service-a的两个实例的http://localhost:8004/user都拿到了新值
2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试_第5张图片
2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试_第6张图片

4、参考文档

spring-cloud-alibaba GIT仓库

spring-cloud-alibaba 官方文档

nacos官方手册

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

你可能感兴趣的:(微服务,架构,云原生,nacos)