Quantcast
Channel: Nginx Forum - Nginx Mailing List - Russian
Viewing all articles
Browse latest Browse all 3102

Неравномерное распределение нагрузки upstream hash consistent (no replies)

$
0
0
Здравствуйте.

Создал балансировщик на 10 кэширующих серверов.
Использовал consistent hash по $request_uri

upstream cacheserver {

hash $request_uri consistent;

server 10.0.0.2:8080 max_fails=0;
server 10.0.0.3:8080 max_fails=0;
server 10.0.0.4:8080 max_fails=0;
server 10.0.0.5:8080 max_fails=0;
server 10.0.0.6:8080 max_fails=0;
server 10.0.0.7:8080 max_fails=0;
server 10.0.0.8:8080 max_fails=0;
server 10.0.0.9:8080 max_fails=0;
server 10.0.0.10:8080 max_fails=0;
server 10.0.0.11:8080 max_fails=0;
keepalive_requests 10000;

keepalive 64;

}

Уникальных урлов более 30 миллионов. Размер файлов примерно одинаковый.

Ожидал, что распределение нагрузки между серверами будет примерно
одинаковое. Однако отклонения достигают 23% как по трафику, так и по
объему закэшированных данных.

Поставил php реализацию библиотеки ketama, смоделировал эту ситуацию и
получил похожий результат. На тесте с десятью серверами и миллионом
ключей - отклонения до 27%.

Улучшает ситуацию увеличение количества серверов. При десятикратном
увеличении серверов отклонение составило 8%.

Для выравнивания cache hit rate по серверам скорректировал размеры кэш
зон в соответствии с реальным распределением нагрузки.

С наилучшими пожеланиями.
Алексей.

P.S.: Может быть стоит отразить эту особенность в документации.
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Viewing all articles
Browse latest Browse all 3102

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>