Load Balancer Pool Distribution Analyzer
Analizator rozkładu puli load balancerów
Symuluj, jak różne algorytmy równoważenia obciążenia rozkładają ruch na członkowie puli. Modeluj scenariusze awarii i porównuj efektywność redystrybucji.
Wolumen ruchu
Członkowie puli
Symulacja scenariusza awarii
Jak to działa: Adresy IP klientów są próbkowane z podsieci /16 (10.0.0.0/16).
Dla haszowania opartego na źródle, każdy unikalny adres IP klienta jest deterministycznie mapowany na członka.
Round robin ignoruje adres IP klienta i dystrybuuje sekwencyjnie. Weighted używa proporcjonalnego
przydziału losowego. Consistent hashing umieszcza zarówno klientów, jak i członków na wirtualnym pierścieniu.
Członkowie puli
| ID | IP:Port | Waga | Status | Akcje |
|---|
Wyniki dystrybucji
Dystrybucja sesji na członka
Analiza redystrybucji po awarii
Consistent Hash Ring
Jak czytać pierścień: Każdy członek jest umieszczony w wielu punktach wokół pierścienia
(wirtualne węzły). Adres IP klienta jest haszowany na pozycję na pierścieniu, a żądanie jest wysyłane
do najbliższego członka zgodnie z ruchem wskazówek zegara. Dodanie lub usunięcie członka wpływa tylko na łuk
pierścienia, który posiadał — minimalizując zakłócenia sesji.
Odwołanie z algorytmów
Round Robin
Sesje są przydzielane sekwencyjnie: członek 1, 2, 3, ..., N, 1, 2, ... Każdy członek
otrzymuje dokładnie 1/N wszystkich żądań. Ignoruje pojemność serwera i trwałość klienta.
Prosty i przewidywalny, ale nie działa poprawnie w przypadku heterogenicznego sprzętu.
Source IP Hash
Hash adresu IP klienta modulo liczby członków wybiera backend. Ten sam klient
zawsze trafia do tego samego członka — przydatne dla aplikacji stanowych. Dodanie lub usunięcie
członka wymaga przepisania wszystkich mapowań klientów (N zmienia się na (N-1)/N wszystkich sesji).
Weighted
Każdy członek otrzymuje udział proporcjonalny do jego wagi względem całkowitej wagi
puli. Członek z wagą=4 otrzymuje 4x sesji niż członek z wagą=1. Używane do modelowania
heterogenicznej pojemności backendu (np. maszyna wirtualna vs serwer bare metal).
Consistent Hashing
Członkowie i klienci są mapowani na okrągły pierścień za pomocą haszowania. Każdy klient przechodzi
do najbliższego członka zgodnie z ruchem wskazówek zegara na pierścieniu. Wirtualne węzły (repliki na członka)
poprawiają jednorodność rozkładu. Kiedy członek ulega awarii, tylko jego sesje przenoszą się do
następnego członka na pierścieniu — zakłócone 1/N sesji vs. 100% dla haszowania modulo.