Re: Уточнение по алгоритму ip hash

Илья Шипицин chipitsine на gmail.com
Чт Авг 11 08:56:48 UTC 2011


а если сделать два апстрима и map по useragent-у ?

  upstream users {
      ip_hash;
      server 10.0.0.1;
      server 10.0.0.2;
      server 10.0.0.3;
    }

    upstream google {
      server 10.0.0.1;
      server 10.0.0.2;
      server 10.0.0.3;
    }


map  $http_user_agent  $upstream  {
        default          users;
         ~Googlebot     google;
    }


 proxy_pass http://$upstream;


11 августа 2011 г. 4:20 пользователь Sergey Kobzar
<sergey.kobzar на itcraft.org> написал:
> On 08/11/11 01:05, Maxim Dounin wrote:
>>
>> Hello!
>>
>> On Thu, Aug 11, 2011 at 12:41:44AM +0300, Sergey Kobzar wrote:
>>
>>> On 08/09/11 22:17, Maxim Dounin wrote:
>>>
>>>> Ip hash считает хеш от
>>>> первых трёх октетов ip-адреса клиента, и выбирает бекенд за
>>>> номером (хеш % (количество бекендов)).
>>>
>>> Этот алгоритм можно изменить только влезая в исходники?
>>
>> Да.  Ну или брать другой модуль балансировки, их есть 3rd party.
>>
>>> У меня сложилась ситуация, когда на одном бэкенде в 2.7 раза больше
>>> запросов чем на втором. Все из-за того, что гуглобот лезет из /24
>>> подсети.
>>
>> Если в вас половина запросов от гугла - может, имеет смысл его
>> слегка успокоить?
>>
>> http://en.wikipedia.org/wiki/Robots.txt#Crawl-delay_directive
>> http://www.google.com/support/webmasters/bin/answer.py?answer=48620
>
> Много времени было потрачено на SEO. Если я такое сделаю - меня просто
> побьют.
>
> Тут что-то думать надо. 3rd party modules использовать не оч. хочется.
>
> Скорее всего буду смотреть как уйти от ip hash если другиг вариантов нет.
>
>>
>> Maxim Dounin
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru на nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>


Подробная информация о списке рассылки nginx-ru