Skalowanie poziome (ang. Horizontal Scaling)

Mateusz Juźwik
3 sierpnia 2023
Czas czytania: 2 minut

Spis treści

Skalowanie poziome – co to jest?

Skalowanie poziome, również nazywane „skalowaniem na zewnątrz”, polega na dodawaniu większej liczby serwerów lub węzłów do infrastruktury systemu, aby obsłużyć wzrost ruchu, liczby użytkowników czy obciążenia pracy. W przeciwieństwie do skalowania pionowego, które koncentruje się na zwiększaniu zasobów pojedynczego serwera, skalowanie poziome polega na rozkładaniu obciążenia na wiele serwerów, co pozwala na lepsze wykorzystanie zasobów i większą niezawodność systemu.

 

Kiedy aplikacja potrzebuje obsłużyć większą liczbę użytkowników lub zwiększyć przepustowość, skalowanie poziome polega na dodaniu nowych instancji serwera lub maszyn do infrastruktury aplikacji. Te nowe instancje pracują równolegle i dzielą między sobą obciążenie, co prowadzi do zwiększenia wydajności i skalowalności systemu.

 

Przykład skalowania poziomego

Przykładem skalowania poziomego może być dodanie kolejnych serwerów do klastra aplikacyjnego, a następnie wykorzystanie równoważenia obciążenia (load balancing) do dystrybucji ruchu między nimi. Dzięki temu każdy serwer może obsłużyć część żądań użytkowników, co prowadzi do lepszej wydajności i możliwości obsłużenia większej liczby użytkowników jednocześnie.

 

Skalowanie poziome może również odnosić się do rozszerzania infrastruktury bazy danych poprzez dodawanie dodatkowych węzłów bazy danych. Każdy węzeł obsługuje część zapytań i przechowuje część danych, co pozwala na równoległe przetwarzanie i zwiększa przepustowość systemu.

 

Weź udział w szkoleniu (Nie-)Techniczny PM I

 

Przy skalowaniu poziomym ważne jest, aby infrastruktura aplikacji była przygotowana na pracę w środowisku rozproszonym. Również równoważenie obciążenia odgrywa kluczową rolę, umożliwiając dystrybucję ruchu w sposób równomierny i efektywny między wszystkimi serwerami.

 

Korzyści wykorzystania skalowania poziomego

Skalowanie poziome daje większe możliwości rozwoju i elastyczności w porównaniu do skalowania pionowego. Można dodawać nowe maszyny lub serwery w miarę wzrostu zapotrzebowania, co umożliwia bardziej płynne i kontrolowane rozszerzanie aplikacji. Jednak wymaga to zarządzania rozproszonym środowiskiem i skomplikowanych konfiguracji równoważenia obciążenia.

Może Cię zainteresować

(Nie-)Techniczny PM I

Szkolenie online

PMasters Toolbox

Karty dobrych praktyk