nginx上了一个APP提供给用户下载,考虑到带宽占用的问题,决定在nginx上做下载限速处理。

操作系统:Centos6.7 X64

nginx版本:nginx/1.11.3

根据官方文档:

对nginx.conf进行配置:

http {
...
limit_conn_zone $binary_remote_addr zone=addr:10m; # 添加该行
...
include vhost/*.conf;
}

因为我这里是APP下载业务是定义的一个nginx虚拟主机

[root@localhost vhost]# pwd
/usr/local/nginx/conf/vhost server {
listen *:;
server_name localhost;
location / {
root /usr/local/test;
index index.html;
limit_conn addr 1; # 每个客户端只允许一个线程。
limit_rate 100k;  # 每个线程最大下载速度100k
} }
 
每个客户端最终的下载速度 = limit_conn * limit_rate 我这里很明显是100kb/s

启动服务,并进行测试:

在网站根目录写入一个大文件并尝试下载:

[root@localhost test]# dd if=/dev/zero of=test.txt bs=1M count=
+ records in
+ records out
bytes (1.0 GB) copied, 2.99695 s, MB/s

本地直接使用wget进行测试: 最大速度100kb/s

客户端使用浏览器进行测试:

可以看见,nginx限速成功。我一个是本地测试,一个是局域网内部测试,当然公网测试就更加明显了。

[ nginx ] 带宽下载限速的更多相关文章

  1. nginx做下载限速

    nginx做下载限速-szszszsz-ChinaUnix博客 nginx做下载限速 2009-12-25 14:34:57 分类: 系统运维 nginx做下载服务器,在性能上满足需求.自带limit ...

  2. web服务器-Nginx下载限速

    web服务器-Nginx下载限速 一. 限速介绍 在生产环境中,为了保护WEB服务器的安全,我们都会对用户的访问做出一些限制,保证服务器的安全及资源的合理分配. 限流(rate limiting)是N ...

  3. nginx secure_link下载防盗链

    下载服务器上有众多的软件资源, 可是很多来源不是本站,是迅雷.flashget, 源源不断的带宽,防盗链绝对是当务之急. 使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载工具完全无效 ...

  4. Python网络爬虫笔记(二):链接爬虫和下载限速

    (一)代码1(link_crawler()和get_links()实现链接爬虫) import urllib.request as ure import re import urllib.parse ...

  5. Nginx 配置下载附件让浏览器提示用户是否保存

    Nginx配置下载附件让浏览器提示用户是否保存   by:授客  QQ:1033553122   测试环境 nginx-1.10.0 问题描述: 前端页面,IE11浏览器下请求下载附件模板,针对xls ...

  6. C# HttpWebResponse下载限速

    在使用HttpWebResponse请求网络内容的时候,一般如下面这种方法: code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 // 非生产环境代码,请在实际使用时进行 ...

  7. 【Nginx】下载,请求限速,根据URL参数限速

    这个场景是限制单个连接的下载速度,还有限制单个IP的连接数,或者单位时间内的请求数,实验环境 nginx1.9.x. 小例子为主,具体的细节请多看文档. 限制下载速度 location /downlo ...

  8. nginx对网站限速

    注意:nginx 1.1.8 之后的版本的语法改为limit_conn_zone $binary_remote_addr zone=NAME:10m; NAME 就是 zone 的名字限制连接数:要限 ...

  9. php nginx fastdfs 下载文件重命名

    其实fdfs可以传入一个filename参数,指定文件名.. M00/00/00/fwAAAVGMateAafjTAAAABBW-xbM368.txt?filename=test.txt 这样下载时用 ...

随机推荐

  1. 常用的gif加载动态图片

    精心搜集的网页素材,包括:Loading GIF动画,"正在加载中"小图片,"请等待"小图标等,欢迎您的下载. 提示:点击鼠标右键,选择”图片另存为“即可轻松保 ...

  2. 软工实践Beta冲刺(6/7)

    队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 1.界面的修改与完善 展示GitHub当日代码/文档签入记 ...

  3. C - 最长公共子序列

    C - 最长公共子序列 Time Limit: 1000/1000MS (C++/Others) Memory Limit: 65536/65536KB (C++/Others) Problem De ...

  4. JDBC数据源的驱动问题

    classes12.jar,ojdbc14.jar,ojdbc5.jar和ojdbc6.jar的区别,之间的差异 在使用Oracle JDBC驱动时,有些问题你是不是通过替换不同版本的Oracle  ...

  5. php 文件上传失败

    使用OSX系统,在使用MAMP Pro作为虚拟服务器,并使用PHP作为后端语言进行文件上传,从临时文件夹拷贝文件的方法为 move_uploaded_file 代码如下: if($_FILES['fi ...

  6. [剑指Offer] 43.左旋转字符串

    题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abc ...

  7. C#怎么调用方法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Exep ...

  8. 【题解】NOI2014动物园

    传送门:洛谷P2375 一直到写到这道题目才发现我一直都理解了假的KMP……fail数组:fail[i]为从1-i(包含i)在内的字符串,相同的最长前后缀长度. 那么我们可以先思考暴力:先求出所有的f ...

  9. [Leetcode] Length of last word 最后一个单词的长度

    Given a string s consists of upper/lower-case alphabets and empty space characters' ', return the le ...

  10. BZOJ1876 [SDOI2009]SuperGCD 【高精 + GCD优化】

    题目 Sheng bill有着惊人的心算能力,甚至能用大脑计算出两个巨大的数的GCD(最大公约 数)!因此他经常和别人比 赛计算GCD.有一天Sheng bill很嚣张地找到了你,并要求和你比 赛,但 ...