服务跨集群调用问题
- 服务调用尽可能选择本地集群的服务,跨集群调用延迟高
- 本地集群不可访问时,再去调用其他集群
服务集群属性
修改yml
spring:
cloud:
nacos:
server-addr: localhost:8848
discovery:
cluster-name: HZ # 杭州
启动多个集群,更改cluster-name之后,启动新的服务
NacosRule负载均衡策略
- 优选选择用集群服务实例列表
- 本地集群找不到提供者,才去其他集群找,并且会报警告
- 确定了可用实例列表后,再采用随机负载均衡挑选实例
根据权重负载均衡
实际部署中会出现这样的场景
- 服务器设备性能有差异,部分实例所在机器形成较好,另一较差,我们希望性能好的承担多些请求。
Nacos提供了权重配置来控制访问频率,权重越大则访问频率越高
步骤:进入nacos网站->服务管理->服务列表->对应服务的详情->对应集群下的对应服务的编辑操作->权重在0-1之间