当前位置: 首页 > article >正文

【Nacos】负载均衡

生产环境相对是比较恶劣的,我们需要对服务的流量进行更加精细的控制.Nacos支持多种负载均衡策略,包括权重,同机房,同地域,同环境等.

1. 服务下线

当某一个节点上接口的性能较差时,我们可以第一时间对该节点进行下线.

操作步骤: 服务详情 ->下线

当点击下线后,再次通过服务发现的服务来请求该接口,该服务就不会有请求进来。再次上线后又会继续受到请求。

这里只是在注册中心中下线了,直接通过后端的接口仍然是可以访问的。

2 权重配置

除了将服务下线之外,我们还可以配置该节点的流量权重。

2.1 配置权重

操作步骤: 找到对应节点 ->编辑 ->在弹出的窗口修改权重值,修改9091端口的权重

每个节点默认权重为1, 修改为0.1

2.2 开启Nacos负载均衡策略

由于Spring Cloud LoadBalance组件自身有负载均衡配置方式,所以不支持Nacos的权重属性配置

我们需要开启Nacos的负载均衡策略,让权重配置生效

参考:如何解决MSE Nacos上修改服务实例的权重不生效问题_微服务引擎(MSE)-阿里云帮助中心

 

2.3 测试权重配置

启动服务, 访问多次接⼝, 观察结果, 会发现9091端⼝号的实例接收的请求明显⽐另外两个实例少 .

3. 同集群优先访问

3.1 概述

Nacos把同一个机房内的实例,划分为一个集群,所以同集群优先访问,在一定程度上也可以理解为同机房优先访问.
微服务架构中,一个服务通常有多个实例共同提供服务,这些实例可以部署在不同的机器上,这些机器可以分布在不同的机房,比如product-service:
实例1:分布在上海机房
实例2:分布在上海机房
实例3:分布在北京机房
实例4:分布在北京机房

微服务访问时,应尽量访问同机房的实例,当本机房内实例不可用时,才访问其他机房的实例.

比如order-service 在上海机房,product-service 在北京和上海机房都有实例,那我们希望可以优先访问上海机房,如果上海机房没有实例,或者实例不可用,再访问北京机房的实例.通常情况下,因为同一个机房的机器属于一个局域网,局域网访问速度更快一点.

3.2 场景演示

# 将订单服务的地点配置为北京,修改nacos.discovery.cluster-name为BJ

 # 将商品服务(9090端口)的cluster-name配置为BJ,其余的配置为SH

# 开启nacos负载均衡策略

# 测试,观察结果

  1. 多次发送请求发现只有9090端口的商品服务能够提供服务,因为他和订单服务都在“北京”,在一个集群。
  2. 把9090端口的实例进行下线(SH集群),再次访问接口,观察日志,发现9091端口和9092端口的实例收到了请求


http://www.kler.cn/news/294684.html

相关文章:

  • 应用层简单实现udp / tcp网络通信
  • 「大数据分析」图形可视化,如何选择大数据可视化图形?
  • Qt: 详细理解delete与deleteLater (避免访问悬空指针导致程序异常终止)
  • JAVA并发编程JUC包之CAS原理
  • 概率学 笔记一 - 概率 - 随机变量 - 期望 - 方差 - 标准差(也不知道会不会有二)
  • 【AcWing】853. 有边数限制的最短路(bellman-ford贝尔曼福特算法)
  • 【HTML】script标签asyncdefer
  • 第十五届蓝桥杯青少组省赛成绩查询及国赛考试安排
  • 如何实现加密功能
  • 内置消息支持
  • 【电子通识】洁净度等级划分及等级标准
  • macOS 安装 Homebrew
  • 电子发射与气体导电
  • 用ceres实现lio-sam平面点匹配
  • SVD降维
  • 网络安全威胁与防范
  • Java-数据结构-链表-LinkedList(二)|ू・ω・` )
  • 【牛站 / USACO2007】
  • 图欧科技-IMYAI智能助手24年8月更新日志大汇总(含史诗级更新)
  • 如何在SQL Server中恢复多个数据库?
  • C# 获取当前鼠标位置
  • ansible--yaml
  • SOMEIP_ETS_092: SD_Check_Reaction_to_a_Subscribe_with_ttl_0
  • css前段知识点分享
  • pytest运行方式及前置后置封装详解
  • Docker 进阶构建:镜像、网络与仓库管理
  • mariadb容器
  • 8阶段项目:五子棋(附带源码)
  • 服务器数据恢复—infortrend存储中RAID6数据恢复案例
  • 资料分析系统课-刘文超老师