当前位置: 首页 > 编程笔记 >

Nginx服务器对数据传输速度限制的基本配置方法讲解

冯亮
2023-03-14
本文向大家介绍Nginx服务器对数据传输速度限制的基本配置方法讲解,包括了Nginx服务器对数据传输速度限制的基本配置方法讲解的使用技巧和注意事项,需要的朋友参考一下

注意:
nginx 1.1.8 之后的版本的语法改为limit_conn_zone $binary_remote_addr zone=NAME:10m;
NAME 就是 zone 的名字详情请看这里 http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html

限制连接数:
要限制连接,必须先有一个容器对连接进行计数,在http段加入如下代码:
"zone=" 给它一个名字,可以随便叫,这个名字要跟下面的 limit_conn 一致
$binary_remote_addr = 用二进制来储存客户端的地址,1m 可以储存 32000 个并发会话

... 省掉 N 字

http
{
limit_conn_zone $binary_remote_addr zone=addr:10m;

接下来需要对server不同的位置(location段)进行限速,比如限制每个IP并发连接数为1,则

server
{
listen 80;
server_name 192.168.11.128;
index index.html index.htm index.php;
limit_conn addr 1; #是限制每个IP只能发起1个连接 (addr 要跟 limit_conn_zone 的变量对应)
limit_rate 100k; #限速为 100KB/秒
root html;

注意事项:
limit_rate 100k; //是对每个连接限速100k。这里是对连接限速,而不是对IP限速!如果一个IP允许两个并发连接,那么这个IP就是限速limit_rate * 2


使用Nginx-limit-traffic-rate-module模块
项目地址:https://github.com/bigplum/Nginx-limit-traffic-rate-module
ngx_http_limit_conn_module 模块下的指令limit_conn指定每个给定键值的最大同时连接数,limit_rate指令对每个连接的速率限制。参数rate的单位是字节/秒,设置为0将关闭限速。 按连接限速而不是按IP限制,因此如果某个客户端同时开启了两个连接,那么客户端的整体速率是这条指令设置值的2倍。如果是多线程的下载,limit_rate并不能限制总的速度。
Limit_traffic_rate模块提供了一种方法,通过客户端IP或下载URL来限制总的下载速度,即使有多个连接。
该限制方法如下所示:

http {
    #limit_traffic_rate_zone  rate $request_uri 32m;
    limit_traffic_rate_zone  rate $remote_addr 32m;
 
    server {
      location /download/ {
        limit_traffic_rate rate 20k;
      }
    }
  }
 类似资料:
  • 本文向大家介绍Nginx服务器限制访问速度的配置方法,包括了Nginx服务器限制访问速度的配置方法的使用技巧和注意事项,需要的朋友参考一下 用Nginx建站的同学,常会有限速需求。开发测试阶段在本地限速模拟公网的环境,方便调试。投入运营会有限制附件下限速度,限制每个用户的访问速度,限制每个IP的链接速度等需求。 刚遇到一个Bug在网络很卡的情况下才能重现,本地调试访问本机速度太快,配置Nginx成

  • 本文向大家介绍Nginx服务器的反向代理proxy_pass配置方法讲解,包括了Nginx服务器的反向代理proxy_pass配置方法讲解的使用技巧和注意事项,需要的朋友参考一下 就普通的反向代理来讲 Nginx的配置还是比较简单的,如: 或者可以 Apache2的反向代理的配置是: 然而,如果要配置一个相对复杂的反向代理 Nginx相对Apache2就要麻烦一些了 比如,将url中以/wap/开

  • 本文向大家介绍Nginx服务器初期基本配置指南,包括了Nginx服务器初期基本配置指南的使用技巧和注意事项,需要的朋友参考一下 一、准备 pcre,有关正则表达式匹配;zlib,用于压缩。这些就不细说了,如果要安装最简版的nginx,记得准备好这两样东西就好了。 用root账户启动服务是比较危险的!  前段时间,测试服务器被黑掉了,终归到底是通过一个root启动的服务上传了木马,最后连ssh都屏蔽

  • 本文向大家介绍Nginx服务器搭建和基本配置详解,包括了Nginx服务器搭建和基本配置详解的使用技巧和注意事项,需要的朋友参考一下 Nginx(engine X) 是一个高性能的 HTTP 服务器和反向代理服务器,这款软件开发的目的是为了解决 C10k 问题。 Nginx 的架构利用了许多现代操作系统的特性,以实现一个高性能的 HTTP 服务器。例如在 Linux 系统上,Nginx 使用了 ep

  • 本文向大家介绍简介Nginx服务器的Websockets配置方法,包括了简介Nginx服务器的Websockets配置方法的使用技巧和注意事项,需要的朋友参考一下 Nginx 1.3.13 已经发布了,该版本支持 Connection: upgrade 和 Upgrade 头,这就意味着支持WebSocket代理了.很多人都在等这个新特性以至于 “Nginx 支持 websockets 吗?” 成

  • 本文向大家介绍讲解Nginx服务器中设置本地浏览器缓存的简单方法,包括了讲解Nginx服务器中设置本地浏览器缓存的简单方法的使用技巧和注意事项,需要的朋友参考一下 浏览器缓存(Browser Caching) 是为了加速浏览并节约网络资源,浏览器在用户磁盘上对最近请求过的文档进行存储。 nginx可以通过 expires 指令来设置浏览器的Header 语法: expires [time|epoc