nacos

根据集群负载均衡

  1. 修改order服务的配置文件,设置为集群:

    spring:
      cloud:
        nacos:
          server-addr: localhost:8848
          discovery:
            cluster-name: HZ
    
  2. 设置order启动类中的IRlue实体为NacosRule,此规则优先匹配同集群服务:

    @Bean
    public IRule randomRule() {
        return new NacosRule();
    }
    

    或者配置文件中:

    userservice: #针对某个微服务
      ribbon:
        NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule #新的负载均衡规则
    

nacos本地集群优先访问,在集群中随机访问,当本地没有的时候会跨集群访问其他集群的服务

根据权重负载均衡

进入nacos管理界面,点击编辑即可调整权重,范围0-1,权重越高访问频率越高,当权重为0的时候,服务不会被访问

环境隔离-namespace

nacos服务储存和数据储存最外层都是一个名为namespace的东西,用来做最外层隔离

新建命名空间,需要在配置文件中配置:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ
        namespace: 5468635f-8d44-45e1-bf56-d4ab00e9f710 #ID

此时再去调用发现order没法得到user的服务,说明是不同的namespace

posted @ 2023-04-20 18:56  Liku007  阅读(19)  评论(0编辑  收藏  举报