paint-brush
Load Balancing primitívek dekódolásaáltal@fairday
39,946 olvasmányok
39,946 olvasmányok

Load Balancing primitívek dekódolása

által Aleksei4m2024/02/26
Read on Terminal Reader
Read this story w/o Javascript

Túl hosszú; Olvasni

Amikor a rendszer méretezését a megnövekedett forgalom és a felhasználók igényeihez igazítja, választhat a függőleges skálázás, amely növeli a szerver teljesítményét, és a vízszintes skálázás, amely a szerverek megkettőzését jelenti. Míg a függőleges méretezés egyszerűbb, vannak korlátai, például hardveres korlátok. A terheléselosztókkal végzett vízszintes méretezés rugalmasságot kínál, de megköveteli az állapottalanság kezelését és a stratégiák bevezetését. Az L4 és L7 terheléselosztók megértése elengedhetetlen, mivel az L4 biztonságosabb és hatékonyabb, míg az L7 intelligens útválasztást kínál a hatékonyság rovására. A megfelelő megközelítés kiválasztása a rendszerkövetelményektől, valamint a biztonsági és teljesítménybeli megfontolások egyensúlyától függ.

People Mentioned

Mention Thumbnail
featured image - Load Balancing primitívek dekódolása
Aleksei HackerNoon profile picture
0-item


Amikor a rendszer növekszik, a forgalom növekszik, egyre több felhasználó használja termékeit, a szerverek lassabban reagálnak, a leállások miatt vállalkozása szenvedni fog, majd elkezd gondolkodni a méretezésen.


A méretezésnek két elsődleges stratégiája van – függőleges és vízszintes.


A függőleges méretezés célja a rendszer teljesítményének növelése azáltal, hogy általában több CPU-t és RAM-ot ad a szerverekhez.


Ezzel szemben a vízszintes méretezés a szerverek megkettőzésére (vagy klónozására) összpontosít az erőforrások készletében.


Ezekről bővebben:


Függőleges méretezés

A függőleges méretezés a legjobb megoldás egy kis forgalmú rendszerhez, mert ez a legkönnyebben elérhető módszer a növekedés kezeléséhez anélkül, hogy további bonyolultságot okozna. Nem kell törődnie az erőforrások egy csoportjára vonatkozó stratégiák telepítésével, az erőforráskészlet rugalmasságával, a kiszolgáló állapottalanságával, az elosztott gyorsítótárral és így tovább.


A függőleges méretezésnek azonban komoly hátrányai vannak

  1. Hardverkorlát, mivel lehetetlen a végtelenségig erőforrásokat hozzáadni
  2. A feladatátvétel és a redundancia hiánya növeli a hosszabb állásidő és adatvesztés kockázatát


Vízszintes méretezés

A vízszintes méretezés kiküszöböli ezeket a problémákat az alkalmazáskiszolgálók klónozásával és olyan összetevők beágyazásával, mint például a terheléselosztó .


A terheléselosztó speciális algoritmusok segítségével osztja el a forgalmat a szervereken, például:


  1. Körmérkőzés
  2. Súlyozott körmérkőzés
  3. IP hash alapú megközelítések
  4. A legkevesebb csatlakozási mód
  5. Legkisebb súlyozott csatlakozási mód
  6. A legkevesebb válasz módszere és még sokan mások.


Ennek ellenére számos hátránya van:


  1. A szervereknek hontalannak kell lenniük
  2. A munkameneteket egy központi adattárban kell fenntartani
  3. Bonyolultabb stratégiák bevezetése szükséges lehet
  4. A terheléselosztó a teljesítmény szűk keresztmetszetévé válhat, ha rosszul van konfigurálva, és az erőforrások nem elegendőek
  5. Ez további összetettséget hoz a rendszerbe, és lehetséges egyetlen hibapont, amely feladatátvételi stratégiákat igényel.


L4 / L7 Terheléselosztók

Ahhoz, hogy az interneten két eszköz kommunikálhasson egymással, az alapul szolgáló rendszereknek meghatározott protokollokat kell követniük. Mindenki hallott az OSI modellről, amely hét réteget ír le, amelyeket a számítógépes rendszerek a hálózaton keresztüli kommunikációhoz használnak. Bár a modern internet egy egyszerűbb TCP/IP protokollverem modellen alapul, az OSI modellt széles körben használják, mivel segít a hálózatok működésének vizualizálásában és kommunikációjában, valamint segít a hálózati problémák elkülönítésében és hibaelhárításában.


A legtöbb ipari terheléselosztási megoldás az L4 és L7 kifejezéseket használja, ahol az L4 az OSI modellben a szállítási rétegre, az L7 pedig az alkalmazási rétegre utal.


Az L4 terheléselosztó továbbra is L2/L3, mivel az alsóbb rétegekből származó adatokat, például IP-címet és portszámot használ.


Az L4 terheléselosztó fő előnyei

  • Biztonságosabb és hatékonyabb, mivel az adattartalmat nem veszik figyelembe az útválasztási döntések során

  • Ugyanaz a TCP-kapcsolat működik a kliens és a szerver között, ami segít megelőzni a terheléselosztón elérhető TCP-kapcsolatok korlátjának túllépését.


Az L4 terheléselosztó fő hátrányai

  • Az intelligens útválasztás lehetetlen, mivel a tartalom nem dekódolódik
  • Az állapotalapú protokoll további bonyolultságot hoz
  • Leképezés nyilvános és privát címek között
  • Nincs gyorsítótár, mivel a tartalom ezen a szinten nem érhető el
  • Nem használható mikroszolgáltatási architektúrához, mivel a forgalom átirányítása nem érhető el az URL elérési útja alapján


Másrészt az L7 terheléselosztó alkalmazási szinten működik az OSI modellben


Az L7 terheléselosztó fő előnyei

  • Okos döntések hozhatók az URL elérési útja, a fejlécek és a tartalom alapján

  • Gyorsítótárazás


Az L7 terheléselosztó fő hátrányai

  • További többletterhelés a két TCP-kapcsolat fenntartása miatt, az egyik az ügyfél és a terheléselosztó, a másik a terheléselosztó és a szerver között. Ezenkívül figyelembe kell venni a terheléselosztó TCP kapcsolati korlátját
  • Kevésbé biztonságos, mivel a terheléselosztónak ismernie kell a tanúsítványokat az adatok visszafejtéséhez és az útválasztási döntések meghozatalához


Következtetés

A terheléselosztó létfontosságú elem, amikor vízszintes skálázást alkalmaznak a nagy forgalmú rendszerek kezelésére. Az L4 és L7 terheléselosztóknak két fő típusa van.


  1. Az L4 terheléselosztó sokkal biztonságosabb és hatékonyabb az okos döntések meghozatalának korlátai miatt

  2. Az L7 terheléselosztó olyan módon működik, hogy intelligens útválasztási döntéseket hozzon a hatékonyság és a biztonság költségeinek köszönhetően


A megfelelő típus kiválasztása a rendszerkövetelményektől függ, és alaposan meg kell fontolni a biztonsági elvek alkalmazása és a teljesítmény szűk keresztmetszetek kiküszöbölése között.


Itt is megjelent .