Skalowanie odnosi się do zwiększania (lub zmniejszania) pojemności zasobów dostępnych dla backendu w celu poprawy jego wydajności lub dostępności. Chociaż skalowanie jest nieodłączną częścią architektury, projektowania i wdrażania backendu, należy wziąć pod uwagę kilka ważnych aspektów.
Wydajność określa, jak szybko aplikacja internetowa może odpowiedzieć na żądanie. Obejmuje to czas oczekiwania, szybkość, przepustowość i wykorzystanie zasobów.
Skalowanie w pionie
Skalowanie w pionie odnosi się do zwiększania zasobów na serwerze. Może to oznaczać zastąpienie centralnego serwera aplikacji bardziej wydajną maszyną o architekturze opartej na serwerze. W przypadku architektur bezserwerowych, mikroserwisów lub architektur działających w chmurze może to oznaczać uaktualnienie przydzielonych zasobów, na przykład zwiększenie dostępnej pamięci lub wybór maszyny wirtualnej wyższego poziomu.
Skalowanie w poziomie
Skalowanie poziome oznacza dodawanie większej liczby serwerów i równoległych zasobów. Architektura bazowa i aplikacja muszą być zoptymalizowane pod kątem tego typu skalowania. Na przykład do rozpowszechniania żądań w architekturze serwerowej może być potrzebne dodatkowe równoważenie obciążenia. W przypadku architektury bezserwerowej w środowisku chmury, np. Cloud Functions, ten typ skalowania może być obsługiwany w przejrzysty sposób bez konieczności dodatkowej konfiguracji.
Skalowanie i rozkład regionalny
Skalowanie na poziomie regionu odnosi się do dystrybucji usług w wielu regionach geograficznych. Rozpowszechnianie usług lub przenoszenie usług bliżej użytkowników może zmniejszyć czas oczekiwania i poprawić ogólną wydajność aplikacji.
Weź pod uwagę regionalną dystrybucję i różnorodność w ramach swojej architektury, zwłaszcza jeśli nie korzystasz z dostawcy chmury, który zajmuje się tymi kwestiami w przejrzysty sposób, np. w architekturze bezserwerowej opartej na chmurze. Zastanów się, jak dystrybucja regionalna może wpływać na przechowywanie danych w aplikacji, zwłaszcza w zakresie spójności danych.
Przetwarzanie i przechowywanie danych w skali globalnej pamiętaj o wszelkich wymaganiach prawnych i przepisach obowiązujących w Twoim systemie, w szczególności o przetwarzaniu i przechowywaniu danych.