Co to jest skalowanie automatyczne

Ukończone

W tej lekcji zapoznamy się z pojęciami dotyczącymi skalowania na platformie Azure.

Elastyczne skalowanie

Główną zaletą chmury jest elastyczne skalowanie. Skalowanie w poziomie odbywa się przez dodawanie wystąpień aplikacji na podstawie zwiększonego zapotrzebowania. Możesz użyć jak najwięcej pojemności, skalowanie w górę w miarę wzrostu obciążenia i skalowanie w miejscu, gdy dodatkowa pojemność nie jest potrzebna.

Klasycznym przykładem zapotrzebowania na elastyczność występuje, gdy witryna internetowa organizacji ma nadzwyczajnie duże obciążenie. Jeśli witryna nie może skalować się w celu spełnienia wymagań, żądania trwają dłużej, ponieważ oczekują na czas procesora. Dla klienta witryna wydaje się działać powoli i nie odpowiadać. W skrajnych przypadkach witryna może nawet sprawiać wrażenie niedziałającej.

Skalowanie ręczne i automatyczne

Możesz skonfigurować ustawienia skalowania dla aplikacji z jednym z dwóch trybów: ręcznym lub automatycznym. Instrukcje ręczne są wykonywane zgodnie z oczekiwaniami: ustawiasz bezwzględną liczbę wystąpień. Automatyczne (skalowanie automatyczne) pozwala jednak ustawić reguły, które określają, jak i ile należy skalować.

Automatyczne skalowanie umożliwia uzyskanie odpowiedniej ilości zasobów uruchomionych w celu obsługi obciążenia aplikacji. Skalowanie automatyczne ułatwia zarządzanie, zmniejszając potrzebę ciągłego podejmowania decyzji dotyczących dodawania lub usuwania zasobów lub sprawdzania wydajności systemu. Posiadanie minimum zapewnia, że aplikacja jest zawsze uruchomiona nawet bez obciążenia. Posiadanie maksymalnego limitu całkowitego możliwego kosztu godzinowego. Automatycznie skalujesz między tymi dwoma skrajnościami przy użyciu utworzonych reguł.

Diagram przedstawiający automatyczne skalowanie oszczędności w kosztach obliczeń.

"Out" vs "Up"

Istnieją dwa sposoby skalowania aplikacji:

  • Skalowanie w pionie, nazywane również skalowaniem w górę i w dół, zmienia pojemność zasobu. Można na przykład przenieść aplikację do większego rozmiaru obliczeniowego. Skalowanie w pionie często wymaga tymczasowego niedostępności systemu podczas ponownego wdrażania, dlatego rzadziej automatyzuje skalowanie w pionie.

  • Skalowanie w poziomie, nazywane również skalowaniem w poziomie i w programie, dodaje lub usuwa wystąpienia zasobu. Podczas aprowizowania nowych zasobów aplikacja będzie nadal działać bez przeszkód. Po zakończeniu procesu aprowizacji rozwiązanie zostanie wdrożone w tych dodatkowych zasobach. Jeśli zapotrzebowanie spadnie, dodatkowe zasoby można zamknąć w sposób czysty i cofnąć przydział.

Skalowanie automatyczne skaluje tylko "w poziomie" (w poziomie), czyli wzrost ("w poziomie") lub spadek ("w") w liczbie wystąpień aplikacji.

Diagram przedstawiający różnicę między skalowaniem w górę i skalowaniem w poziomie.

Automatyczne skalowanie w usłudze Azure Spring Apps

Skalowanie automatyczne w usłudze Azure Spring Apps monitoruje metryki zasobów aplikacji Spring podczas jej uruchamiania. Wykrywa sytuacje, w których do obsługi rosnącego obciążenia są wymagane dodatkowe zasoby i zapewnia dostępność tych zasobów przed przeciążeniem systemu. Autoskaluj to wbudowana funkcja usługi Azure Spring Apps, która pomaga aplikacjom mikrousług wykonywać najlepsze działania w przypadku zmian zapotrzebowania.

Przykład rzeczywisty

Sklepy spożywcze Raleya muszą zmodernizować kod i infrastrukturę dla witryn handlu elektronicznego opartych na języku Java hostowanych na platformie Azure. Firma musi również zoptymalizować i zautomatyzować alokację sieci. Wszystko musi być niezawodne, zawsze włączone i — co najważniejsze — łatwe do zarządzania.

Raley wybiera usługę Azure Spring Apps. Azure Spring Apps to usługa zarządzana dla platformy Spring Boot, która zapewnia możliwości platformy Kubernetes w połączeniu z monitorowaniem w czasie rzeczywistym i skalowaniem automatycznym. Umożliwia również raley's przyjęcie prawdziwej architektury platformy jako usługi (PaaS), co pozwala na pełniejsze korzystanie z zalet chmury.

Usługa zarządza infrastrukturą aplikacji mikrousług Spring Boot w tle, dzięki czemu deweloperzy mogą skupić się na swoim kodzie. Po wdrożeniu bibliotek java lub kodu aplikacja Spring Apps automatycznie podłącza aplikacje do środowiska uruchomieniowego spring service.

Po ich wdrożeniu usługa Azure Spring Apps jest w pełni zintegrowana z narzędziami usługi Azure Monitor, takimi jak Application Insights i Log Analytics. Te narzędzia umożliwiają łatwe, w pełni konfigurowalne monitorowanie wydajności i błędów. Te same usługi monitorowania mogą również obsługiwać skalowanie automatyczne, co pomaga zapewnić odpowiedni rozmiar zasobów dla bieżących obciążeń.

Diagram przedstawiający skalowanie automatyczne w górę.