zoukankan      html  css  js  c++  java
  • Nginx 流量和连接数限制

    1.Nginx流量限制

    实现流量限制由两个指令 limit_rate 和 limit_rate_after 共同完成:

    limit_rate
    语法:limit_rate rate;

    默认值:limit_rate 0;

    作用域:http, server, location, if in location

    命令概述:限制向客户端传送响应的速率限制。参数 rate 的单位是字节/秒,设置为 0 将关闭限速。 nginx 按连接限速,所以如果某个客户端同时开启了两个连接,那么客户端的整体速率是这条指令设置值的 2 倍。

    limit_rate_after
    语法:limit_rate_after size;

    默认值:limit_rate_after 0;

    作用域:http, server, location, if in location

    设置不限速传输的响应大小。当传输量大于此值时,超出部分将限速传送。

    作用范围:http,server,location,if inlocation

    location /seven/{
                    root /home/shiyanlou/Documents;
                    limit_rate_after 3m;
                    limit_rate 20k;
    }
    

    2.Nginx 并发连接数限制

    limit_conn_zone
    语法: limit_conn_zone zone_name $variable the_size

    默认值: no

    作用域: http

    本指令定义了一个数据区,里面记录会话状态信息。 variable 定义判断会话的变量;the_size 定义记录区的总容量。

    limit_conn
    语法: limit_conn zone_name the_size

    默认值: no

    作用域: http, server, location

    指定一个会话最大的并发连接数。 当超过指定的最发并发连接数时,服务器将返回 "Service unavailable" (503)。

    http {
        limit_conn_zone   $binary_remote_addr  zone=one:10m;
        ...
        server {
            ...
            location /seven/ {
                limit_conn   one  1;
                .....
            }
    

    定义一个叫“one”的记录区,总容量为 10M,以变量$binary_remote_addr作为会话的判断基准(即一个地址一个会话)。 限制 /seven/ 目录下,一个会话只能进行一个连接。 简单点,就是限制 /seven/ 目录下,一个 IP 只能发起一个连接,多过一个,一律 503.

    ----------------------------------【喜欢打赏】-------------------------------------------

    小主,辛苦啦!文章棒棒哒,赏杯咖啡吧...
    打赏

    ----------------------------------【喜欢打赏】-------------------------------------------

  • 相关阅读:
    前端之css样式(选择器)
    html 之表单,div标签等
    前端基础之html
    【动态规划】【背包模板】
    【dp专题1】F
    【dp专题1】B
    hdu 1171 Big Event in HDU 01背包
    HDU 2048 数塔 简单DP
    练习赛2(补题)问题 G: 建设电力系统【最小生成树kruskal模板题】
    【图论】【最小生成树】【kruskal+prime】
  • 原文地址:https://www.cnblogs.com/tomtellyou/p/10764733.html
Copyright © 2011-2022 走看看