在前面我们说到了《nginx限制连接数》和《nginx限制请求数》这里介绍下nginx_limit_speed_module模块如何对location总带宽和每个IP速度的限制。nginx_limit_speed_module项目地址:
1. 介绍该模块能够限制从一个地址同时连接的总速度。
2. 指令介绍limit_speed_zone语法:limit_speed_zone zone_name $variable memory_max_size默认值:no配置段:http定义会话状态存储空间。会话的数目由所分配的变量$variable决定,该值取决于memory_max_size值。
如:limit_speed_zone one $binary_Remote_addr 10m;客户端的地址被用作会话。注意:该变量$binary_remote_addr是用来代替$remote_addr。$remote_addr变量值的长度是7到15个字节。因此状态大小等于32或64字节。$binary_remote_addr变量值的长度总是4个字节,因此状态大小始终是32字节。1M共享空间可以处理3.2万个会话,每个会话32字节。
limit_speed语法:limit_speed zone_name max_speed默认值:no配置段:http,server,location该指令指定同一个IP的最大速度。例如:如果限制每个IP地址的最大速度为100KB,同时同一个IP有10个并发连接,那么每个连接的速度为10KB。
3. 安装方法# ./configure –prefix=/usr/local/nginx –-add-module=./nginx_limit_speed_module-Master# make# make install
4. 实例
limit_speed_zone www_ttlsa_com $binary_remote_addr 10m;
/download/
limit_speed www_ttlsa_com 100k;
|














发表评论