手把手带你领略双十一背后的核心组件Sentinel之流控规则

Posted IT挖掘机y

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手把手带你领略双十一背后的核心组件Sentinel之流控规则相关的知识,希望对你有一定的参考价值。


1、Sentinel相关概念的介绍


1.1 、 什 么 是 流 控 规 则 ? {1.1、什么是流控规则?} 1.1

简单了说就是流量控制(所谓的流量就是请求或者叫访问)

1.2 、 什 么 是 Q P S ? {1.2、什么是QPS?} 1.2QPS

每秒请求数,当API的QPS达到阈值时进行限流

1.3 、 什 么 是 线 程 数 ? {1.3、什么是线程数?} 1.3线

当请求API的线程数达到阈值时进行限流



2、流控模式


2.1 、 直 接 {2.1、直接} 2.1

2.1.1 、 选 择 阈 值 类 型 为 Q P S {2.1.1、选择阈值类型为QPS} 2.1.1QPS

在这里插入图片描述
连 续 刷 新 , 当 我 间 隔 1 s 访 问 时 , 访 问 的 是 正 常 数 据 {连续刷新,当我间隔1s访问时,访问的是正常数据} 1s访访
在这里插入图片描述
连 续 刷 新 , 当 我 间 隔 < 1 s 时 , 会 访 问 到 系 统 默 认 数 据 {连续刷新,当我间隔<1s时,会访问到系统默认数据} <1s访
在这里插入图片描述

2.1.2 、 选 择 阈 值 类 型 为 线 程 数 {2.1.2、选择阈值类型为线程数} 2.1.2线

在这里插入图片描述
使用JMeter进行模拟并发测试

零基础带你入门JMeter-模拟高并发接口测试,小白教程!:https://blog.csdn.net/Kevinnsm/article/details/117302197?spm=1001.2014.3001.5501

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


2.2 、 关 联 {2.2、关联} 2.2

首先先了解一下什么是关联,所谓关联就是一个接口依赖另外一个接口,当后者的资源达到阈值时,会发生限流,而这个限流是限制的前者。比如接口A依赖接口B,接口B的QPS达到阈值,然后会对A进行限流

为 什 么 要 这 样 做 呢 ? {为什么要这样做呢?}

这是为了保障那些非常重要的接口,如果某银行的信息修改接口能和支付接口相比吗?

在这里插入图片描述
使 用 p o s t m a n 模 拟 测 试 {使用postman模拟测试} 使postman
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述



2.3 、 链 路 {2.3、链路} 2.3

当从某个接口过来的资源达到限流条件时,开启限流

比 如 我 A 接 口 和 B 接 口 同 时 调 用 同 一 个 服 务 , 如 果 A 的 Q P S 达 到 阈 值 就 会 对 A 进 性 限 流 , 而 B 不 会 受 任 何 影 响 {比如我A接口和B接口同时调用同一个服务,如果A的QPS达到阈值就会对A进性限流,而B不会受任何影响} ABAQPSAB




3、流控效果


3.1 、 快 速 失 败 {3.1、快速失败} 3.1

这个快速失败前面都使用过,就是当QPS或者线程数达到阈值时直接返回默认数据!

3.2 、 W a r m U p {3.2、Warm Up} 3.2WarmUp

Warm Up主要应对这一种情况,服务器中的某个API平常没人访问,突然一下来了海量的请求,如果直接放进来,那系统就直接GG了;所以需要预热,(比如我最开始处理QPS=3的访问量,慢慢的经过10秒后,我能处理QPS=10的访问量,就是这个意思,需要一定的时间预热)

在这里插入图片描述
初始值怎么计算呢?比如上方这张图,初始的QPS=9/3=3,经过五秒后能达到QPS=9,系统默认值是除以3.

3.3 、 排 队 等 待 {3.3、排队等待} 3.3

所谓的排队等待就是如果达到了阈值,那么其他的请求就在一边排队等着

在这里插入图片描述
上面我设置了QPS=1的阈值,也就是一秒只能一个请求;超过了就在那等着

在这里插入图片描述
然后从控制台就可以看出一秒处理一个请求
在这里插入图片描述
在这里插入图片描述

以上是关于手把手带你领略双十一背后的核心组件Sentinel之流控规则的主要内容,如果未能解决你的问题,请参考以下文章

手把手带你领略双十一背后的核心技术Sentinel之热点参数限流

阿里weex校园行,带你领略开发的魅力

简单几行代码带你快速了解淘宝双十一的强大技术支撑点Sentinel+Nacos

女朋友问阿里双十一实时大屏如何实现,我惊呆一会,马上手把手教她背后的大数据技术

揭秘String类型背后的故事——带你领略汇编语言魅力

揭秘String类型背后的故事——带你领略汇编语言魅力