#limit_conn_zone:限制并发连接数,即同一时间连接数
#设置一个自定义名字(perip),大小为10M的缓存空间,$binary_remote_addr表示以每个IP地址来限制
limit_conn_zone $binary_remote_addr zone=perip:10m;
#设置一个自定义名字(perserver),大小为10M的缓存空间,$server_name表示以server来限制
limit_conn_zone $server_name zone=perserver:10m;
server
{
limit_conn perip 2; #每个ip的并发连接数
limit_conn perserver 20; #server总并发连接数
limit_rate 1024k;#限制下载速度;
}
####
#limit_req_zone:限制单位时间内的请求数
#设置一个自定义名字(perip),大小为10M的缓存空间,每个IP地址,每秒接受1个请求
limit_req_zone $binary_remote_addr zone=perip:10m rate=1r/s;
#设置一个自定义名字(perserver),大小为10M的缓存空间,server,每秒接受10个请求
limit_req_zone $server_name zone=perserver:10m rate=10r/s;
server
{
#单个IP的请求数,burst:缓冲队列的长度,nodelay:大于缓冲长度的將直接503,不设置nodelay则会排队等待
limit_req zone=perip burst=5 nodelay;
limit_req zone=perserver burst=10; #总请求数
}
我的微信: