zoukankan      html  css  js  c++  java
  • 高并发之API接口限流

    原文链接: https://blog.csdn.net/zrg523/article/details/82185088

    总结:

    1.控制并发数量   Semaphore

    2.控制访问速率

     算法:

    • 漏桶算法

    • 令牌桶算法

       实现

    • Google开源工具包Guava提供的限流工具类RateLimiter来实现控制速率

    3.控制单位时间窗口内请求数

    应用级限流的一些方法就介绍完了。假设将应用部署到多台机器,应用级限流方式只是单应用内的请求限流,不能进行全局限流。因此我们需要分布式限流和接入层限流来解决这个问题。

    ----------------------------------------------------------------------------

    1.分布式限流

    • 自定义注解+拦截器+Redis实现限流 (单体和分布式均适用,全局限流)

    2.接入层限流

    • 主要介绍nginx 限流,采用漏桶算法。限制原理:可一句话概括为:“根据客户端特征,限制其访问频率”,客户端特征主要指IP、UserAgent等。使用IP比UserAgent更可靠,因为IP无法造假,UserAgent可随意伪造。
  • 相关阅读:
    IDEA快捷方式
    JVM调优总结
    log4g详细配置
    大前端完整学习路线(详解)
    Tomcat工作原理
    Oracle
    Servlet知识
    lmap
    常见博客API
    PL/SQL入门理解(一)
  • 原文地址:https://www.cnblogs.com/UncleWang001/p/10592694.html
Copyright © 2011-2022 走看看