ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: проблема с upstream_hash


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: проблема с upstream_hash
  • From: Konstantin Svist <fry.kun@xxxxxxxxx>
  • Date: Fri, 22 Jun 2012 14:04:20 -0700
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=Fykb2MW2UbzsYAc+tXmGbvkRPqXLfYjUpKXswLajMfI=; b=mrux1/RlxWBlhehjsE24VJbSwWGJUyye5qKxB04HB0tR3YSfXhJX2chAEriRfPNY6F o9VYfjFVpaZjf68GXdSWy38cDflabYC1JWbljHyVhi3HuFYbZE0xRvHWMhqsG/7tFskn naE/129xX+FIW8cJFkMT7WOzrfaHQoWqHPHjVROzbJn1ijEI4dg9BINfjMrv0eQrswyA HKruVeeqQY1P6+p/GQWEB5lE1dbHpvwc5icNKUaZ9cz0rhDrB4Oxaey+ve6Mdp4dJjdW +rUSM3cVu2pu7l+qxSYL2Br7LK/K9+PGDyBL4u4p4oBgD+NEotl0xfT1BImsxhCgno1y m55Q==
  • In-reply-to: <4FE4D7D2.1080400@gmail.com>
  • References: <4FE4D7D2.1080400@gmail.com>

On 06/22/2012 01:38 PM, Konstantin Svist wrote:
Баг: если в списке upstream есть хосты с IP адресом 127.0.0.1 то upstream_hash работает неправильно.

Понятно что это 3rd party plugin, но в его коде нету ничего подозрительного - скорее nginx что-то хитро оптимизирует...


upstream  cl1  {
        hash        $arg_key;
        hash_again  10;
        server  srv1:6381;
        server  srv1:6411;
        server  srv1:6436;
        server  srv1:6437;
        server  srv2:6381;
        server  srv2:6411;
        server  srv2:6436;
        server  srv2:6437;
    }

Запрос на srv1:

2012/06/22 12:00:00 [debug] 11111#0: *1234567890 http script var: "3197dc0f345aae7132ab1e3b432ddb00" 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: hashed "3197dc0f345aae7132ab1e3b432ddb00" to 3 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: Starting with 3 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: get upstream request hash peer try 10 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: chose peer 3 w/ hash 19143 for tries 10

Запрос на любом другом хосте:

2012/06/22 12:00:00 [debug] 11111#0: *1234567890 http script var: "3197dc0f345aae7132ab1e3b432ddb00" 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: hashed "3197dc0f345aae7132ab1e3b432ddb00" to 7 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: Starting with 7 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: get upstream request hash peer try 10 2012/06/22 12:00:00 [debug] 11111#0: *1234567890 upstream_hash: chose peer 7 w/ hash 19143 for tries 10


Хотя вообще srv1 видит себя как "127.0.0.1" и "192.168.0.123", а все остальные его видят как только "192.168.0.123"... тогда upstream_hash видит не 8 а 12 хостов... Значит ли это что srv1 может сам себе послать в 2 раза больше запросов чем кажется должен по конфигу?


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.