美文网首页
技术组件(一)-X-Limitor(混合限流器)

技术组件(一)-X-Limitor(混合限流器)

作者: 爱编程的凯哥 | 来源:发表于2019-03-22 15:55 被阅读0次

实现目标

实现spring-boot插件话限流轻量型工具,用户可

  1. 自定义配置同步规则(无论zk,applo等等,可以自己定义)
  2. 自定义超限策略
  3. 自定义检查规则
  4. 单台限流和集群限流支持
  5. 支持后续的监控扩展

为什么要限流

  1. 每台服务器都有自己的处理能力上限,不论TPS还是QPS,超过上限后服务可能将进入不可控状态,所以这时候对于每台服务的处理上限我们在入口就要做好防护措施,防止服务不可用,甚至造成雪崩情况发生.

  2. 集群的限流使用,我们经常使用到依赖场景,比如底层打款接口的tps为90,如果我们不做限流,通过我们请求打款会造成超限的各种不可控的异常问题.

常见算法了解

  1. 令牌桶:

    1. 会有令牌生产者按一定频次向桶中放令牌
    2. 请求线程每次取一个令牌后才可访问


      image.png
  2. 漏斗

    1. 漏斗设置了最大访问阈值,超过阈值将会溢出
    2. 漏斗限制了出口大小,控制了最大并发请求数,超出请求可能会阻塞等待


      image.png
  1. 计数器算法(信号量限制)
    1. 计数器算法,控制了单位时间内最大访问数量
    2. 不进行流速控制
image.png

XLimitor实现架构

1.核心实现功能点:

  1. 分布式redis实现限流,对应等待时间的逻辑设计
  2. 单台服务限流通过RateLimiter配置
  3. 监听器动态更新规则配置,可用户自己实现监听逻辑规则
  4. 超限策略自定义实现
  5. 监控扩展
  6. 动态插拔,不限位置,灵活使用(比如说网关系统可以插入拦截器,service层限流aop等,或者代码植入限流器配置)
  7. 降级相关策略支持

2. 架构图:

X-Limitor.png

说明:
1.dispatch-center:调度中心,负责所有请求拦截规则管理、限流器规则管理等等工作

  1. irule:拦截规则定义,如根据uri、ip、自定义商编等等规则配置

  2. limitor:限流器组件,实现集群限流、单台限流、阻塞配置、容错降级等逻辑

  3. exchange-map:交换处理器,绑定irule和limitor之间关系

  4. refresher:刷新者,用于对外提供更新api

  5. AccessPoint:接入适配,提供常用接入场景

  6. monitor-extend:对于性能监控扩展模块

  7. 最上的监听自定义扩展点是提供对外业务自定义扩展功能

3. 源代码

建设中,后补.....

相关文章

  • 技术组件(一)-X-Limitor(混合限流器)

    实现目标 实现spring-boot插件话限流轻量型工具,用户可 自定义配置同步规则(无论zk,applo等等,可...

  • golang常用代码片段--定制化gin中间件

    limiter限流器中间件 作为gin中的一个中间件,起到对接口限流的作用 接口限流的配置组件每个人都不同,使用自...

  • 分布式架构

    大流量限流/削峰 常见的限流算法 计数器算法池化资源技术的限流就是通过计数器算法来控制全局的总并发数。 令牌桶算法...

  • RateLimiter

    什么是RateLimiter Guava库中的一个限流器组件,基于PPS(Permit per second每秒单...

  • 基于系统负载的动态限流组件 dynamic-limiter

    基于系统负载的动态限流组件 dynamic-limiter 来源:Qunar 技术沙龙 背景 一个系统的处理能力是...

  • 西瓜种植地改善问题

    1,土质干旱 插土罐技术 2,微量元素匮乏 自动混合器技术

  • (1)v8简介

    V8 并没有采用某种单一的技术,而是混合编译执行和解释执行这两种手段,我们把这种混合使用编译器和解释器的技术称为 ...

  • Web Components

    定义 浏览器原生支持的一套组件封装技术。这里有两个关键字: 组件技术 浏览器原生 组件化一直是前端完善的方向,从早...

  • 12.混合模式 Mixin

    1 基础 混合是一种灵活的分布式复用 Vue 组件的方式。混合对象可以包含任意组件选项。以组件使用混合对象时,所有...

  • 今日份打卡 195/365

    技术文章限流熔断技术Sentinel

网友评论

      本文标题:技术组件(一)-X-Limitor(混合限流器)

      本文链接:https://www.haomeiwen.com/subject/haofvqtx.html