大白话讲微服务的灾难性雪崩效应

devtools/2024/10/18 5:44:18/

讲在前面,为什么微服务需要有熔断等策略呢?今天我们用大白话来讲讲微服务的灾难性雪崩效应,熔断策略就是解决雪崩效应的有效解决方案。

什么是灾难性雪崩效应?

假设我们有两个访问量比较大的服务A和B,这两个服务分别依赖C 和D,C和D服务都依赖E服务。

A和B不断的调用C,D处理客户请求和返回需要的数据。当E服务不能 供服务的时候,C和D的 超时重试机制会被执行。

由于新的调用不断的产生,会导致C和D对E服务的调用大量的积 压,产生大量的调用等待和重试调用,慢慢会耗尽C和D的资源比如 内存或CPU,然后也down掉。

A和B服务会重复C和D的操作,资源耗尽,然后down掉,最终整个 服务都不可访问。

结论: 服务与服务之间的依赖性,故障会传播,造成连锁反应,会对 整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪 崩”效应。

造成雪崩原因是什么

1. 服务提供者不可用(硬件故障、程序bug、缓存击穿、用户大量请求)

2. 重试加大流量(用户重试,代码逻辑重试)

3. 服务调用者不可用(同步等待造成的资源耗尽)

注意: 在高并发访问下,系统所依赖的服务的稳定性对系统的影响非 常大,依赖有很多不可控的因素,比如网络连接变慢,资源突 然繁忙,暂时不可用,服务脱机等。我们要构建稳定、可靠的 分布式系统,就必须要有一套容错方法。


http://www.ppmy.cn/devtools/98776.html

相关文章

婚恋交友系统该如何制作成品系统?

制作婚恋交友系统的成品系统是一个综合性的过程,涉及多个关键步骤和技术要点。以下是一个详细的制作流程: 1. 需求分析 市场调研:首先需要对婚恋交友市场进行深入调研,了解目标用户群体的需求、喜好、习惯以及市场痛点。用户画像…

Qt实现圆型控件的三种方法之子类化控件并重写paintEvent

前言 最近在研究绘制各种形状的控件,这里专门挑出圆形的控件进行记录,其它形状的也大差不差,会了圆形的之后其它的也类似。 正文 这里我挑出Label来进行举例。 子类化 QLabel 并重写 paintEvent 如果需要更复杂的自定义绘制,…

0成本学习Liunx系统【只需要一台笔记本电脑,无需购买云服务器】

【准备工作,需要软件】: 1:MobaXterm 【服务器连接工具(免费开源)】 2:CentOS-7-x86_64-DVD-2009.iso 【CentOS-7 镜像】 3:VirtualBox-7.0.20-163906-Win.exe 【虚拟机壳子】 4&…

多个echarts使用3D导致页面卡顿的解决办法

如果使用echarts自带的clear()和dispose()方法没有明显效果的话,可以使用页面的loseContext()对echarts进行手动清除,最好放到router.js里的路由守卫(router.beforeEach)里执行,也可以在APP.vue下监听路由的变化进行清除,自行决定即可&#x…

加载的案例

<!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8" /> <meta name"viewport" content"widthdevice-width, initial-scale1.0" /> <title>下滑加载历史</title> …

SQL每日一练-0816

今日SQL题&#xff1a;计算每个项目的年度收入增长率 难度系数&#xff1a;&#x1f31f;☆☆☆☆☆☆☆☆☆ 1、题目要求 计算每个项目每年的收入总额&#xff0c;并计算项目收入环比增长率。找出每年收入增长率最高的项目。输出结果显示年份、项目ID、项目名称、项…

海外媒体软文发稿【越南通讯社vnanet】官方媒体发布新闻稿

海外媒体软文发稿【越南通讯社vnanet】官方媒体发布新闻稿 越南通讯社(越南语&#xff1a;Thng tấn x Việt Nam&#xff1b;英语&#xff1a;Vietnam News Agency&#xff0c;简称VNA)&#xff0c;简称“越通社”是越南国家通讯社&#xff0c;始建于1945年9月2日。越通社是越…

如何用Java SpringBoot搭建小区疫情购物系统【技术解析】

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…