文章目录

  • 1. 前言
  • 2. 热点规则配置
  • 3. 参数例外项

1. 前言

Sentinel版本:1.8.0

何为热点?热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制。比如:

  • 商品 ID 为参数,统计一段时间内最常购买的商品 ID 并进行限制
  • 用户 ID 为参数,针对一段时间内频繁访问的用户 ID 进行限制

热点参数限流会统计传入参数中的热点参数,并根据配置的限流阈值与模式,对包含热点参数的资源调用进行限流。热点参数限流可以看做是一种特殊的流量控制,仅对包含热点参数的资源调用生效。

Sentinel 利用 LRU 策略统计最近最常访问的热点参数,结合令牌桶算法来进行参数级别的流控。热点参数限流支持集群模式。

2. 热点规则配置

  • 参数索引:接口参数的位置,从0开始
  • 单机阈值:统计窗口时长内,相同参数最多允许的次数

写个接口测试:

 @SentinelResource(value = "order1")@GetMapping("/order1")public String order1(String name, Integer age) throws Exception {return name + "," + age;}

流控规则:order1 这个接口的name参数值,在10秒内只能传递一次

  • 打开浏览器,访问 http://localhost:8020/order1?name=fuhb
  • 这时把name参数换个值,访问 http://localhost:8020/order1?name=zhangsan&age=10,结果正常
  • 但是,只要在10秒内,name参数再次传递fuhb或者zhangsan,就会被熔断
  • 这就是热点参数限流的作用

3. 参数例外项

上面的例子,参数在10秒内重复传值都会被限流。

假设现在有个需求:当name=fuhb的时候,QPS允许达到5,其他情况下QPS仍然保持1。这时就需要配置参数例外项。

如下图,应该很一目了然:


这时,我们反复访问 http://localhost:8020/order1?name=fuhb&age=10 接口,只要10秒内不超过5次,就不会被熔断。

Spring Cloud Alibaba:Sentinel 热点参数限流相关推荐

  1. Spring Cloud入门-Sentinel实现服务限流、熔断与降级(Hoxton版本)

    文章目录 Spring Cloud入门系列汇总 摘要 Sentinel简介 安装Sentinel控制台 创建sentinel-service模块 限流功能 创建RateLimitController类 ...

  2. 【SpringCloud】Spring cloud Alibaba Sentinel 热点规则

    文章目录 1.概述 2.案例 2.1 参数限流 2.2 参数值限流 2.3 小结 1.概述 视频:https://www.bilibili.com/video/BV18E411x7eT?p=124&a ...

  3. Spring Cloud Alibaba | Sentinel: 服务限流高级篇

    Spring Cloud Alibaba | Sentinel: 服务限流高级篇 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 如无特殊说明 ...

  4. Spring Cloud Alibaba - Sentinel入门案例(四)(热点规则 )

    Spring Cloud Alibaba - Sentinel入门案例(四)(热点规则 ) 回溯 什么是Sentinel? 正文 环境准备 简单使用 复杂使用 注意事项 回溯 什么是Sentinel? ...

  5. Sentinel(九)之热点参数限流

    转载自  热点参数限流 Overview 何为热点?热点即经常访问的数据.很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制.比如: 商品 ID 为参数,统计一段时 ...

  6. SpringCloud Sentinel 熔断降级、热点参数限流、与系统自适应限流介绍与配置

    一.熔断降级介绍与配置 概述:除了上一章节讲解的sentinel的流量控制之外,sentinel还提供了熔断降级功能.与处理高并发的系统自我保护机制不同的是,熔断降级主要防止当前接口不可用时,导致依赖 ...

  7. Spring Cloud Alibaba —— Sentinel 详细使用

    导航 引言 一.Sentinel的两个基本概念 二.流控规则 2.1 基本选项 2.2 高级选项 三.熔断(降级)规则 四.热点规则 五.授权规则(了解) 六.系统规则(了解) 七.自定义异常返回 八 ...

  8. spring cloud alibaba sentinel 学习

    sentinel 学习 介绍(官方文档) 流量控制设计理念 熔断降级 Hystrix Sentinel 系统自适应保护 spring cloud alibaba sentinel sentinel.d ...

  9. 【java_wxid项目】【第十六章】【Spring Cloud Alibaba Sentinel集成】

    主项目链接:https://gitee.com/java_wxid/java_wxid 项目架构及博文总结: 点击:[使用Spring Boot快速构建应用] 点击:[使用Spring Cloud O ...

最新文章

  1. sql中的Tran和C#中的TransactionScope介绍
  2. springcloud(四):熔断器Hystrix
  3. Python生成器的用法,使用生成器灵活的生成斐波那契数列
  4. Improving RGB-D SLAM in dynamic environments: A motion removal approach
  5. Qt -- 非常详细的pro文件的语法说明
  6. mysql or会用到索引吗_mysql or条件可以使用索引而避免全表
  7. [剑指offer]面试题第[59-2]题[JAVA][队列的最大值][暴力][双端队列]
  8. 担心再次被起诉?马斯克已删除特斯拉可能几个月内成为最大公司推文
  9. Liberty glance 新功能 healthcheck
  10. 基于pyspark 大数据分析_基于阿里云平台的大数据教学案例 —— B站弹幕数据分析...
  11. Synopsys Mentor Candence
  12. Kotlin基础学习-入门篇
  13. 如何越过计算机开机密码,怎样跳过电脑开机密码教程
  14. 如何启用计算机的休眠,电脑休眠
  15. 快速上手Django(二) Django 根据模型(models)生成更新数据库表make migrations
  16. 最好用的几款epub阅读器
  17. 网页模板设计中5种常见的设计版式类型介绍
  18. VC++QQ群,刚刚建立,欢迎加入,共同进步
  19. html文件无法访问
  20. 树莓派3B上用Python编程获取TSL2561光传感器数据

热门文章

  1. SAP CRM有哪些版本
  2. SAP系统中发送消息的几种办法
  3. 特性,物料特性,批次特性(转自SAPNow)
  4. POPUP_TO_CONFIRM_STEP
  5. 快手“连横”京东,是志同道合还是抱团取暖?
  6. java中xpath_java-xpath学习
  7. 气门组的结构组成有哪些_你知道电线电缆是由哪些结构材料组成的吗?
  8. 怎么更进一步学python_【百尺竿头,更进一步学Python】Python进阶课程——进程,线程和协程的区别...
  9. php 比较,PHP类型比较
  10. java调用方法返回数组_JAVA使用下面的方法头编写方法,返回两个数组列表的并集...