• nacos注册中心集群


    前言:本篇将介绍nacos的集群部署,期待能方便复习以及帮助的诸位大佬😉

    nacos集群

    在这里插入图片描述

    SpringBoot 整合Spring Cloud Alibaba Nacos注册中心。多数情况一个应用系统系统只有一个注册中心,但由于微服务架构系统跨区域分布部署可能有网络延迟问题,所以需要考虑多注册中心方案。

    由于存在老旧基于Spring Cloud的微服务系统迁移到新注册中心问题,类似灰度发布,需要新老Nacos注册中心并存,可以通过某个SpringBoot项目同时配置多个注册中心来解决。
    首先配置yml文件
    修改user-service的application.yml文件,添加集群配置:

    spring:
      cloud:
        nacos:
          server-addr: localhost:8848
          discovery:
            cluster-name: HZ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    重启两个user-service实例后,我们可以在nacos控制台看到下面结果:

    在这里插入图片描述
    再次复制一个user-service启动配置,添加属性:

    -Dserver.port=8083 -Dspring.cloud.nacos.discovery.cluster-name=SH
    
    • 1

    在这里插入图片描述

    spring:
      application:
        name: userservice
      profiles:
        active: dev 
      cloud:
        nacos:
          server-addr: nacos:8848 
          config:
            file-extension: yaml 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    启动UserApplication3后再次查看nacos控制台:

    在这里插入图片描述

    负载均衡

    默认的ZoneAvoidanceRule并不能实现根据同集群优先来实现负载均衡。

    因此Nacos中提供了一个NacosRule的实现,可以优先从同集群中挑选实例。

    首先给order-service配置集群信息

    修改order-service的application.yml文件,添加集群配置:

    spring:
      cloud:
        nacos:
          server-addr: localhost:8848
          discovery:
            cluster-name: HZ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    修改order-service的application.yml文件,修改负载均衡规则:

    userservice:
      ribbon:
        NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule 
    
    • 1
    • 2
    • 3

    权重配置

    实际部署中会出现这样的场景:

    服务器设备性能有差异,部分实例所在机器性能较好,另一些较差,我们希望性能好的机器承担更多的用户请求。

    但默认情况下NacosRule是同集群内随机挑选,不会考虑机器的性能问题。

    因此,Nacos提供了权重配置来控制访问频率,权重越大则访问频率越高。

    在nacos控制台,找到user-service的实例列表,点击编辑,即可修改权重:
    在这里插入图片描述
    在弹出的编辑窗口,修改权重:
    在这里插入图片描述

    注意:如果权重修改为0,则该实例永远不会被访问

    本篇文章就介绍到这里,谢谢各位大佬的支持🤩🤩🤩

  • 相关阅读:
    linux 常用命令笔记
    何时以及如何使用try、catch和throw关键字
    spark的启动测试失败
    数据结构之堆 → 不要局限于堆排序
    思维导图之规范与重构
    基于ResNet34的花朵分类
    模板学堂丨DataEase用户操作日志分析大屏
    C++标准模板(STL)- 类型支持 (属性查询,获取数组类型的维数)
    下一代实时数据库:Apache Doris 【二】编译与安装
    【数据结构】排序
  • 原文地址:https://blog.csdn.net/qq_53847859/article/details/125462648