Читать книгу Mikroserwisy. Wzorce z przykładami w języku Java - Chris Richardson - Страница 27
Skalowanie w osi Z trasuje żądania na podstawie atrybutu żądania
ОглавлениеSkalowanie w osi Z uruchamia również wiele instancji aplikacji monolitycznej, ale w przeciwieństwie do skalowania w osi X każda instancja jest odpowiedzialna tylko za podzbiór danych. Rysunek 1.5 pokazuje, jak działa skalowanie w osi Z. Router przed instancjami używa atrybutu żądania, aby skierować go do odpowiedniej instancji. Aplikacja może na przykład kierować żądania na podstawie userId.
W tym przykładzie każda instancja aplikacji jest odpowiedzialna za podzbiór użytkowników. Router używa userId określonego w nagłówku Authorization żądania, aby wybrać jedno z N identycznych wystąpień aplikacji. Skalowanie w osi Z to świetny sposób na skalowanie aplikacji w celu obsługi rosnącej liczby transakcji i ilości danych.
Rysunek 1.4. Skalowanie w osi X za modułem równoważenia obciążenia uruchamia wiele identycznych instancji aplikacji monolitycznej
Rysunek 1.5. Skalowanie w osi Z uruchamia wiele identycznych instancji aplikacji monolitycznej za routerem, który kieruje żądania na podstawie atrybutu request. Każda instancja odpowiada za podzbiór danych