limit_zone

语法:limit_zone zone_name $variable the_size
默认值:no
作用域:http
 
本指令定义了一个数据区,记录会话状态信息。
$variable定义判断会话的变量;the_size 定义记录区的总容量。
 
例子:

limit_zone one $binary_remote_addr 10m;
 
定义一个叫"one"的记录区,总容量为10M,以变量$binary_remote_addr作为会话的判断基准(即一个地址一个会话)。
 
在这里使用的是$binary_remote_addr而不是$remote_addr。
 
$remote_addr的长度为7至15bytes,会话信息的长度为32或64 bytes。而 $binary_remote_addr的长度为4bytes,会话信息的长度为32 bytes。
 
当区的大小为1M的时候,大约可以记录32000个会话信息(一个会话占用32 bytes)。

猜你喜欢

转载自eric-gao.iteye.com/blog/1002458