接入层限流

作者: 迦叶_金色的人生_荣耀而又辉煌 | 来源:发表于2021-12-26 09:11 被阅读0次

    上一篇 <<<应用级限流
    下一篇 >>>Naocs集群注意事项


    接入层通常指请求流量的入口,该层的主要目的有:负载均衡、非法请求过滤、请求聚合、缓存、降级、限流、A/B测试、服务质量监控等等,可以参考笔者写的《使用Nginx+Lua(OpenResty)开发高性能Web应用》。

    对于Nginx接入层限流可以使用Nginx自带了两个模块:连接数限流模块ngx_http_limit_conn_module和漏桶算法实现的请求限流模块ngx_http_limit_req_module。还可以使用OpenResty提供的Lua限流模块lua-resty-limit-traffic进行更复杂的限流场景。

    limit_conn用来对某个KEY对应的总的网络连接数进行限流,可以按照如IP、域名维度进行限流。limit_req用来对某个KEY对应的请求的平均速率进行限流,并有两种用法:平滑模式(delay)和允许突发模式(nodelay)。

    ngx_http_limit_conn_module
    limit_conn是对某个KEY对应的总的网络连接数进行限流。可以按照IP来限制IP维度的总连接数,或者按照服务域名来限制某个域名的总连接数。但是记住不是每一个请求连接都会被计数器统计,只有那些被Nginx处理的且已经读取了整个请求头的请求连接才会被计数器统计。


    推荐阅读:
    <<<高并发架构的整体思路
    <<<一个网站访问慢的真正原因
    <<<高并发情况下,接口的代码会存在哪些问题
    <<<压缩静态资源减少带宽传输的方式
    <<<动静分离架构模式
    <<<缓存策略汇总
    <<<后端服务的雪崩效应及解决思路
    <<<服务的隔离、降级和熔断
    <<<服务限流之计数器方式
    <<<服务限流之滑动窗口计数
    <<<服务限流之令牌桶算法
    <<<服务限流之漏桶算法
    <<<漏桶算法和令牌桶算法的区别
    <<<自定义封装限流算法
    <<<应用级限流

    相关文章

      网友评论

        本文标题:接入层限流

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