熔断和负载均衡

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
简介: 【8月更文挑战第20天】

综合了负载均衡算法和熔断措施地方案
放开流量是在服务端处理的,也就是服务端还是收到了100%的流量,只不过有部分流量会被放过去并且被正常处理。
一个自然的想法是为什么不直接让客户端来控制这个流量
)
这里进一步结合在负载均衡里提到的根据调用结果来调整负载均衡策略的讨论,可以让客户端也采用这种负载均衡策略。

整体流程:

  1. 服务端在触发熔断的时候,会返回一个代表熔断的错误
  2. 客户端收到这个错误之后,会把这个服务端节点暂时挪出可用节点列表。后续所有熔断请求都不会打到这个节点上了
  3. 客户端等待一段时间后,逐步放开流量
  4. 如果服务端正常处理了新来的请求,就让客户端加大流量
  5. 如果服务端再次返回了熔断响应,客户端就会再一次把这个节点挪出可用列表
  6. 如此循环,直到完全恢复

可以这么回答,关键词是负载均衡

整体思路是利用负载均衡来控制流量。如果一个服务端节点触发了熔断,那么客户端在做负载均衡的时候就可以将这个节点挪出可用列表,后续请求会发给别的节点。在经过一段时间之后,客户端可以尝试发请求给该节点。如果该节点正确处理了,那客户端就可以加大流量。否则客户端就要再一次等待一段时间。

万一所有可用节点都触发熔断了,应该怎么办?

这个方案是需要兜底的,比如说如果因为某些原因数据库出问题,导致某个服务所有的节点都触发了熔断,那么客户端就完全没有可用节点了。不过这个问题本身熔断解决不了,负载均衡也解决不了,只能通过监控告警之后人手工介入处理了。

相关实践学习
小试牛刀,一键部署电商商城
SAE 仅需一键,极速部署一个微服务电商商城,体验 Serverless 带给您的全托管体验,一起来部署吧!
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
yiui
+关注
目录
打赏
0
0
0
0
59
分享
相关文章
【ElasticSearch】关于es跨域的问题
【ElasticSearch】关于es跨域的问题
530 1
带你读《无人机网络与通信》之一:无人机系统概述
本书针对无人机系统两个关键问题—通信组网和管控体系做了比较全面和深入的描述和探讨,特别是以大量笔墨分析了现有无线通信解决方案,对比了不同通信协议,得出了很有价值的研究结论。无人机的跨越式发展将涉及公共安全管理的问题,构建管控体系是当务之急,分级管理以及制定相应的适航标准是一件大事情,本书对此也进行了系统的、建设性的讨论。未来,高档无人机和无人机集群将对环境具有更强的感知能力和自适应能力,还有对任务的自规划和学习、调整能力,本书讨论的内容将为它们的发明、部署和监督提供宝贵的信息。
熔断方案
【8月更文挑战第20天】
168 0
Nginx 出现403 Forbidden 的几种解决方案【已解决】
Nginx 出现403 Forbidden 的几种解决方案【已解决】
9574 3
Ingress-Nginx使用指南上篇
关于Ingress-Nginx在Kubernetes中的使用指南,涵盖了从基础安装到高级特性配置的详细步骤和实战案例。
3168 3
Ingress-Nginx使用指南上篇
开源日志分析工具
【10月更文挑战第20天】
527 3
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等