On Monday 08 August 2016 06:21:14 nNgzlTtv3k5lzmKRvlmS22tSl8sJr68k wrote: > Поисковые боты часто дёргают сайты, чем создают большую нагрузку. Была > предпринята попытка ограничить запросы к php-страницам. > Вот конфиг nginx: > > http { > ...... > > limit_req_zone $bot_key zone=php_bot:100m rate=5r/s; > [..] > Секций server { ... } несколько, они все идентичные. > В итоге после полного перезапуска nginx в логе видим: > > 08/Aug/2016:12:27:00 +0300 200 site.com ... upstream_response_time=0.119 > 08/Aug/2016:12:27:00 +0300 503 site.com > 08/Aug/2016:12:27:00 +0300 503 site.com > 08/Aug/2016:12:27:00 +0300 200 site.com ... upstream_response_time=0.117 > 08/Aug/2016:12:27:00 +0300 503 site.com > 08/Aug/2016:12:27:00 +0300 200 site.com ... upstream_response_time=0.116 > 08/Aug/2016:12:27:00 +0300 200 site.com ... upstream_response_time=0.022 > > 08/Aug/2016:12:27:01 +0300 200 site.com ... upstream_response_time=0.129 > 08/Aug/2016:12:27:01 +0300 503 site.com ... > 08/Aug/2016:12:27:01 +0300 200 site.com ... upstream_response_time=0.074 > 08/Aug/2016:12:27:01 +0300 503 site.com ... > 08/Aug/2016:12:27:01 +0300 200 site.com ... upstream_response_time=0.030 > 08/Aug/2016:12:27:01 +0300 503 site.com ... > > За "01" секунду всего 3 успешно обработанных запроса, за предыдущую - 4, > несмотря на то, что ограничение допускает обработку 5 запросов. [..]
У модуля нет никакой дискретности в 1 секунду, так же как ограничение скорости 60 км/ч, не означает что это должна быть средняя скорость движения в течение часа. Установленное вами ограничения допускает не более 1 запроса в течение 200мс. Если вы хотите разрешить всплески и принимать запросы, в том числе пришедшие с интервалом менее 200мс, то нужно настроить параметр burst. -- Валентин Бартенев _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru