`
strongant
  • 浏览: 66872 次
  • 性别: Icon_minigender_1
  • 来自: IT
社区版块
存档分类
最新评论

HTTP接入层限流

 
阅读更多
http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

        limit_req_status 509;
        limit_conn_status 509;
        limit_conn_zone  $server_addr zone=one:10m;  #按域来限流
        limit_req_zone  $server_addr  zone=req_one:10m rate=2r/s;



server{

        limit_conn  one 2;
        limit_req   zone=req_one nodelay;


        listen 22019;
        access_log /opt/nginx/logs/limit_access.log;
        location / {
                proxy_pass  http://www.baidu.com;

        }

        error_page   509  /509.html;
        location = /509.html {
           root   html;
        }

}

}

关键指令解析:
limit_req_status 指http被限流时的错误码,默认是503
limit_conn_status 指tcp被限流时的错误码,默认是503
limit_req,该指令对Http请求进行限流也就是限并发数,如果burst属性没配置表示不进行http请求缓冲,直接被限流返回
limit_conn,该指令限制tcp连接数,真正服务要不要请求HTTP请求是靠这个指令

准确的说,尽管你配置的limit_req并发数在多,服务真正能不能处理还是靠这个limit_conn配置的数字

比如:limit_req对应的配置是 100 rate/s,表示每秒允许的http请求并发数是100
limit_conn对应的配置是 10,表示服务每秒能同时处理10请求,也就是指这个服务的tps

用户可以无限的发送http请求,但是真正同时被处理的也就10个请求


分享到:
评论

相关推荐

    Go-BFE基于百度统一前端技术框架开源的七层流量接入系统

    **Go-BFE详解:基于百度统一前端的七层流量接入系统** Go-BFE,全称为Baidu Frontend Engine,是百度公司开源的一款基于Go语言开发的七层流量接入系统。这款系统旨在为互联网服务提供高性能、高可用性的前端流量...

    微服务的接入层设计与动静资源隔离

    在接入层设计中,还需要考虑高并发策略,如Session黏滞、流量控制、限流、熔断等。这些策略有助于保护系统免受突发流量冲击,保证服务的稳定性。 6. 安全与监控 接入层还需要具备安全防护能力,例如防火墙、DDoS...

    藏经阁-蘑菇街高并发多终端无线网关实践.pdf

    4. **客户端接入层**:MWP客户端接入层包含了应用层协议封装、平台化服务、横向拓展、网络层链接管理、地址调度、建链优化等功能,通过Stream API、降级策略、SDK集成(如JSBridge、Analyse SDK、Plugin配置管理)等...

    京东王栋:618大促网关承载十亿调用量背后的架构实践

    - 接入层负责长短链接的接入、限流、黑白名单、路由、负载均衡、容灾切换等,采用Nginx+lua技术。 - 分发层(网关的业务层)负责请求的分发和处理,是架构的核心部分。 - 考虑到容灾的需要,架构中还应该包含容灾...

    CCNA课堂精简笔记

    1. **接入层**: 接入层的主要作用是提供终端设备接入网络的入口。这些设备通常包括计算机、打印机等。为了支持大量终端设备的接入,接入层的设备端口较为密集。主要设备有: - **交换机**: 负责连接多个设备并进行...

    ALB产品介绍v1.3.pdf

    4. **安全防攻击**:内置应用层防火墙WAF,以及精细的应用层限流机制,提高安全性。 5. **数据分析**:提供多维度的数据报表,帮助分析用户分布、服务状态和网络状况。 6. **多租户管理**:实现配置和权限的租户级别...

    行业制造-标准-机顶盒与IPTV业务平台接口技术要求 第4部分 流媒体接口.zip

    9. **兼容性和互操作性**:标准的制定目的是提高不同厂家设备之间的兼容性和互操作性,确保无论用户选择哪个品牌的机顶盒,都能顺利接入任何符合标准的IPTV服务。 10. **测试与验证**:标准还会包含测试和验证方法...

    Servicr抽调接口

    5. **服务治理**:包括熔断、限流、降级等策略,这些是保障服务稳定性的关键。比如Hystrix提供的断路器模式,防止服务雪崩;Ribbon或Sentinel的限流和降级策略,保护服务免受高并发冲击。 6. **服务测试**:介绍...

    开涛高可用高并发-亿级流量核心技术

    4.4 接入层限流 78 4.4.1 ngx_http_limit_conn_module 78 4.4.2 ngx_http_limit_req_module 80 4.4.3 lua-resty-limit-traffic 88 4.5 节流 90 4.5.1 throttleFirst/throttleLast 90 4.5.2 throttleWithTimeout 91 ...

    CCNA笔记-学员

    - 功能:作为接入层的汇聚点,提供路由决策功能,并实现安全过滤、流量控制等功能。 - 特征:具备更高级的处理能力。 - 主要设备:路由器。 3. **核心层**: - 功能:提供高速的数据传输,主要负责快速转发...

    网络教程OSI模型.ppt

    然而,实际的网络通信更多地依赖于TCP/IP模型,该模型简化为四层,分别是应用层、传输层、网络层和网络接入层,更适应现代互联网的需求。尽管如此,理解OSI模型仍然有助于我们深入理解网络通信的基本原理。

    WLAN中多视频流的QoE感知公平性双层资源分配算法

    因此,提出了一个双层结构:第一层是在接入点(AP)和上行链路背景流量用户之间进行资源分配,第二层是在下行链路视频用户之间进行资源分配。算法首先将WLAN调整到最优操作点,随后进行双层资源分配。 QoE的感知...

    美团点评技术沙龙07 - 美团配送平台高可用实践.b7b05950-4fed-11e6-ae32-999541cb4b74.pd

    - 系统高可用架构设计,涵盖负载均衡网关MGW、HTTP负载均衡接入层HLB、API服务层、服务A服务B、数据层(分布式缓存DB、大数据存储)。 - 双机房容灾架构,包括域名服务商、主机房、容灾机房、MGW、HLB、API服务、...

    2.基于Dubbo微服务框架亿级网关架构解密1

    1. **接入层**:负责鉴权、防刷、IP黑名单和限流。 2. **分发层**:实现请求的异步化、资源隔离、泛化调用。 3. **熔断降级层**:根据预设策略执行熔断和降级操作。 4. **监控层**:提供慢接口监控、调用量统计、...

    【spring-boot-seckill分布式秒杀系统 v1.0】从0到1构建的java秒杀系统源码+安装说明

    3、基于SLB价格以及灵活性考虑后面我们接入Nginx做限流分发,来保障后端服务的正常运行。 4、后端秒杀业务逻辑,基于Redis 或者 Zookeeper 分布式锁,Kafka 或者 Redis 做消息队列,DRDS数据库中间件实现数据的读写...

    藏经阁-阿里七层流量入口Tengine硬件加速探索之路.pdf

    - 选择方案:最终选择了QAT卡对接入层Tengine的Gzip进行卸载和加速,以降低CPU负载。 5. 加速方案实施: - Gzip加速架构:Tengine通过Zlib Shim适配标准zlib库,结合QAT Driver与硬件进行通信,利用QAT卡的加速...

    wifi大全.docx

    本文将深入探讨四种常见的无线网络接入方式:WAP、WIFI、CMWAP和CMNET,以及它们之间的区别和联系。 首先,WAP(Wireless Application Protocol)是一种无线网络协议,主要用于早期的移动设备上,提供简化版的网页...

Global site tag (gtag.js) - Google Analytics