限流,熔断,降级分析

写在前面

本文一起看下限流,熔断,降级的概念。

1:限流

限制单位时间内的请求数,超过的则拒绝或其他。常用的算法有滑动时间窗口,漏桶算法,令牌桶算法。

2:熔断

在分布式的场景中,一个请求可能涉及到多个微服务间的调用,当某个下游微服务出现问题时,可能会导致其调用服务不可用,这个影响不断被方法,最终可能导致整个微服务集群不可用,如下图:
在这里插入图片描述
服务D不可用,可能会很快耗尽服务B的线程资源导致服务B也不可用,接着服务A也不可用,为了处理这种情况,我们就需要在服务D不可用时,服务B停止向服务D发起请求,而是直接返回错误或是其他(其实就是执行降级逻辑),整个停止访问不可用服务的动作就叫做熔断,当然,在服务恢复后还要能够重新访问,这也是熔断需要考虑的问题。

3:降级

降级,即降低服务等级,并不是不服务了,而是服务的等级降低了,比如你点外卖,如果点外卖的人少,外卖小哥二十分钟就给你送过来了,如果点外卖的人很多,外卖小哥四十分钟才给你送过来,结果也给你送过来了,只不过慢了点(降级了),那么降低服务质量的手段都有哪些呢,包括但不限于如下:

1:服务异常或超时,返回错误给客户端
2:耗时的同步操作,转换为异步
3:监控到流量激增,系统压力增大,及时关闭某些非核心功能,即丢车报帅。
4:正常给客户端返回结果,但质量降低,如返回的图片从高清图片,返回非高清图片
...等等其他

写在前面

参考文章列表

服务降级与服务熔断区别 。
10张图带你彻底搞懂限流、熔断、服务降级 。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2662080.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

**Python**综合案例

Python综合案例 一、系统需求分析 1、需求分析 使用面向对象编程思想完成学员管理系统的开发,具体如下: ① 系统要求:学员数据存储在文件中 ② 系统功能:添加学员、删除学员、修改学员信息、查询学员信息、显示所有学员信息、保存学员信息及退出系统等功能。 2、角色…

ubuntu:beyond compare 4 This license key has been revoked 解决办法

https://www.cnblogs.com/zhibei/p/12095431.html 错误如图所示: 解决办法: (1)先用find命令找到bcompare所在位置:sudo find /home/ -name *bcompare (2)进入 /home/whf/.config,删除/bco…

PAT乙级 1025 反转链表

给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转。例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4;如果 K 为 4,则输出应该为 4→3→2→1→5→6,即…

Live800:客户体验策略是什么?企业如何制定客户体验策略?

客户体验策略是企业为了提升顾客对产品或服务的感知和满意度而采取的一系列措施和方法。它关注的是如何创造一个积极、愉悦和有价值的购买过程,从而建立长期的客户关系和忠诚度。客户体验策略是企业成功的关键之一,因为它能够帮助企业在竞争激烈的市场中…

2023“SEED”第四届江苏大数据--新能源赛道 复赛Btop2总结

第一名是真的强!基本都是第一,难以撼动。 昨天新能源赛道终于落下了帷幕,真的不是一般的卷。最后的排名都到了0.0几分的差距。跟队友很辛运复赛B榜单目前进入top3的行列,下面简单总结一下赛事过程。 初赛按照天级别预测未来一周各…

mfc100u.dll文件丢失了要怎么解决?修复mfc100u.dll详细指南

mfc100u.dll文件丢失了要怎么解决?首先让我们扒一扒什么是 mfc100u.dll。这玩意儿是 Microsoft Visual Studio 2010 的一部分,它就像一款程序生活中不可或缺的零件,没了它,程序肯定跑不起来。想想看,没有一个重要的零件&#xff…

QGraphicsItem器件移动及旋转相关问题

一、前言 Qt的图形视图框架中,可以使用如下接口设置图元坐标: void QGraphicsItem::setPos(const QPointF &pos)Sets the position of the item to pos, which is in parent coordinates. For items with no parent, pos is in scene coordinates.…

crc算法的应用 CRC16 CRC32

提到crc算法,可能比较陌生,但是在日常开发中,有如下应用 循环冗余检查_百度百科 本质是一个哈希函数,用于文件校验处理。 CRC16 redis集群使用了crc16 来计算对应的哈希值来计算与 16384 取模,确定当前 key 所在的哈…

关于java选择结构if和else详解

关于java选择结构if和else详解 在上篇文章中我们了解了java的基本流程控制之一用户交互,也讲述了scanner类的使用方式,本篇文章中我们来深入一下下一个java流程控制,if和else,这个是非常关键的,也是我们以后的工作中最…

穷举vs暴搜vs深搜vs回溯vs剪枝

欢迎来到Cefler的博客😁 🕌博客主页:那个传说中的man的主页 🏠个人专栏:题目解析 🌎推荐文章:题目大解析(3) 目录 👉🏻全排列 👉&…

北斗卫星助力物流企业,打造智慧运输新时代

北斗卫星助力物流企业,打造智慧运输新时代 北斗卫星系统作为我国自主研发的卫星导航系统,近年来在智慧物流领域发挥了重要作用。通过北斗卫星系统的应用,物流企业可以实现智能化管理,提高运输效率,降低物流成本。越来…

零基础学Java第二天

复习回顾: 1.dos命令 dir 显示当前文件夹下面的所有的文件和文件夹 cd 切换目录的 mkdir 创建文件夹的 rd 删除文件夹的 del 删除文件 D: 切换盘符 cls 清屏 2.书写Java代码换行打印《静夜诗》这首古诗 class Demo1 { …

Python中的并发编程(7)异步编程

异步编程 Python3.4后新增了asyncio模块,支持异步编程。 异步是在一个线程中通过任务切换的方式让多个任务”同时“进展。asyncio不涉及线程/进程切换,减少了线程/进程创建、上下文切换的开销,更轻量级。 asyncio的核心是事件循环&#xff0…

智能分析网关V4+太阳能供电模式,搭建鱼塘养殖远程视频监控方案

一、行业背景 传统的鱼塘养殖模式由于养殖区域面积大、管理难度高,经常会出现偷钓者、盗窃鱼苗、非法入侵等监管难题,给养殖户带来了不小的经济损失。为了解决这些问题,搭建鱼塘远程监控系统成为了必要之举。通过远程监控系统,管…

rabbitmq使用总结

1、进入rabbitmq的sbin目录,进入CMD 2、输入./rabbitmq-plugins enable rabbitmq_management启用管理服务。 3、输入./rabbitmqctl start_app启动服务。 查看是否启动成功 1、浏览器访问http://localhost:15672/ 下载erlang 地址如下: http://erla…

【C++入门(一)】:详解C++语言的发展及其重要性

🎥 屿小夏 : 个人主页 🔥个人专栏 : C入门到进阶 🌄 莫道桑榆晚,为霞尚满天! 文章目录 🌤️什么是C🌤️C的发展史🌤️C的重要性☁️语言的广泛度☁️C的领域⭐…

java在线票务系统(选座)Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java servlet 在线票务系统(选座)管理系统是一套完善的java web信息管理系统 系统采用serlvetdaobean(mvc模式),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要…

从方程到预测:数学在深度学习中的作用

图片来源 一、说明 深度学习通常被认为是人工智能的巅峰之作,它的成功很大程度上归功于数学,尤其是线性代数和微积分。本文将探讨深度学习与数学之间的深刻联系,阐明为什么数学概念是该领域的核心。 二、数学框架 从本质上讲,深度…

腾讯云轻量应用服务器性能差吗?

腾讯云轻量应用服务器性能如何?轻量服务器CPU采用什么型号?处理器计算性能如何?轻量应用服务器会不会比云服务器CVM性能差?腾讯云服务器网txyfwq.com详解轻量CPU型号主频、处理器性能、内存、公网带宽、月流量、不同地域速度测试、…