limit_conn_zone $binary_remote_addr zone=addr:16m;
limit_conn_zone $server_addr zone=server:16m;
server{
listen 5556;
server_name limit.test;
limit_conn addr 1;
limit_conn server 5;
location / {
echo_sleep 1;
echo "I'm here!";
}
}
$ for i in {1..9}; do curl -sI --interface 127.0.0.1 127.0.0.1:5556 | grep HTTP & done | grep HTTP; wait
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 200 OK
$ for i in {1..9}; do curl -sI --interface 127.0.0.$i 127.0.0.1:5556 | grep HTTP & done | grep HTTP; wait
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 503 Service Temporarily Unavailable
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
Например (для москвы) расход в районе 30-50руб. утром или вечером это скорее всего поездка на транспорте. Расход в 200-500 рублей в районе обеда это обед и т.п.