NacosRule负载均衡

一、集群优先规则

1、配置OrderService的集群名称。

cloud:
    nacos:
      server-addr: localhost:8848 # nacos服务地址
      discovery:
        cluster-name: HZ #集群名称

2、开启服务测试发现order-service依然是轮询,并未优先选择在本地集群位置的user-service

  集群负载均衡:在order-service中设置负载均衡的IRule为NacosRule,这个规则优先会寻找与自己同集群的服务。

  当本地集群找不到服务。则会跨集群访问并且日志中会发出跨集群访问警告。方便运维人员检查。

userservice:
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule # com.netflix.loadbalancer.RandomRule # 负载均衡规则

 

二、根据权重负载均衡

实际部署中会出现这样的场景: 服务器设备性能有差异,部分实例所在机器性能较好,另一些较差,因此希望性能好的机器承担更多的用户请求。

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

  在Nacos控制台可以设置实例的权重值,首先选中实例后面的编辑按钮。

  

权重为0:方便服务版本升级。

实例的权重控制:

  Nacos控制台可以设置实例的权重值,0~1之间

  同集群内的多个实例,权重越高被访问的频率越高

  权重设置为0则完全不会被访问

posted @ 2023-06-20 17:04  佛系粥米  阅读(243)  评论(0编辑  收藏  举报