Wzorce projektowe chmury, które obsługują doskonałość operacyjną

Podczas projektowania architektur obciążeń należy używać wzorców branżowych, które odpowiadają typowym wyzwaniom. Wzorce mogą pomóc w umyślnym kompromisie w ramach obciążeń i zoptymalizować pod kątem żądanego wyniku. Mogą również pomóc w ograniczeniu ryzyka wynikającego z określonych problemów, które mogą mieć wpływ na niezawodność, bezpieczeństwo, wydajność i koszty. Ponieważ operacje przecinają wszystkie te obszary, ryzyko ostatecznie wpłynie na operacje obciążeń. Te wzorce są wspierane przez rzeczywiste środowisko, są przeznaczone do skalowania w chmurze i modeli operacyjnych i są z natury niezależne od dostawcy. Używanie dobrze znanych wzorców jako sposobu standaryzacji projektu obciążenia jest samym składnikiem doskonałości operacyjnej.

Wiele wzorców projektowych bezpośrednio obsługuje jeden lub więcej filarów architektury. Wzorce projektowe, które obsługują filar doskonałości operacyjnej, wykorzystują topologie, które stanowią solidne podstawy dla bezpiecznych praktyk wdrażania i ułatwiają ewolucję architektury w czasie, scenariusze migracji i wgląd.

Wzorce projektowe pod kątem doskonałości operacyjnej

Poniższa tabela zawiera podsumowanie wzorców projektowych chmury, które obsługują cele doskonałości operacyjnej.

Wzorce Podsumowanie
Warstwa chroniąca przed uszkodzeniem Chroni nowe składniki systemu przed zachowaniem lub wyborami implementacji starszych systemów przez dodanie warstwy pośrednika do interakcji między starszymi i nowymi składnikami. Ten wzorzec pomaga zagwarantować, że nowy projekt składników pozostanie niezamieszony przez starsze implementacje, które mogą mieć różne modele danych lub reguły biznesowe podczas integracji z tymi starszymi systemami. Wzorzec jest szczególnie przydatny w przypadku stopniowych migracji systemu. Zmniejsza dług techniczny w nowych składnikach, a jednocześnie nadal obsługuje istniejące składniki.
Choreografia Koordynuje zachowanie autonomicznych składników rozproszonych w obciążeniu przy użyciu zdecentralizowanej komunikacji sterowanej zdarzeniami. Ten wzorzec może być przydatny, gdy spodziewasz się często aktualizować lub zastępować usługi w cyklu życia obciążenia. Ponieważ składniki rozproszone są autonomiczne, można zmodyfikować obciążenie przy użyciu mniej ogólnej zmiany w systemie.
Konsolidacja zasobów obliczeniowych Optymalizuje i konsoliduje zasoby obliczeniowe przez zwiększenie gęstości. Ten wzorzec łączy wiele aplikacji lub składników obciążenia w udostępnionej infrastrukturze. Konsolidacja prowadzi do bardziej jednorodnej platformy obliczeniowej, która może uprościć zarządzanie i wgląd, zmniejszyć różne podejścia do zadań operacyjnych i zmniejszyć wymaganą ilość narzędzi.
Jednostki skalowania wdrożenia Zapewnia metodę wydawania konkretnej wersji aplikacji i jej infrastruktury jako kontrolowanej jednostki wdrożenia w oparciu o założenie, że te same lub różne wersje zostaną wdrożone współbieżnie. Ten wzorzec jest zgodny z niezmienialnymi celami infrastruktury, obsługuje zaawansowane modele wdrażania i może ułatwić bezpieczne praktyki wdrażania.
Zewnętrzny magazyn konfiguracji Wyodrębnia konfigurację do usługi, która jest zewnętrzna dla aplikacji w celu obsługi aktualizacji dynamicznych wartości konfiguracji bez konieczności wprowadzania zmian w kodzie lub ponownego wdrażania aplikacji. Ta separacja konfiguracji aplikacji z kodu aplikacji obsługuje konfigurację specyficzną dla środowiska i stosuje przechowywanie wersji do wartości konfiguracji. Zewnętrzne magazyny konfiguracji są również typowym miejscem do zarządzania flagami funkcji w celu umożliwienia bezpiecznych praktyk wdrażania.
Agregacja za pomocą bramy Upraszcza interakcje klientów z obciążeniem przez agregowanie wywołań do wielu usług zaplecza w jednym żądaniu. Ta topologia umożliwia ewolucję logiki zaplecza niezależnie od klientów, umożliwiając zmianę implementacji usługi łańcuchowej, a nawet źródeł danych, bez konieczności zmieniania punktów dotykowych klientów.
Odciążanie bramy Odciąża przetwarzanie żądań do urządzenia bramy przed przekazaniem żądania do węzła zaplecza i po nim. Dodanie bramy odciążającej do procesu żądania umożliwia zarządzanie konfiguracją i utrzymaniem odciążonych funkcji z jednego punktu zamiast zarządzania nią z wielu węzłów.
Routing bramy Kieruje przychodzące żądania sieciowe do różnych systemów zaplecza na podstawie intencji żądań, logiki biznesowej i dostępności zaplecza. Routing bramy umożliwia oddzielenie żądań od zapleczy, co z kolei umożliwia zapleczom obsługę zaawansowanych modeli wdrażania, przejść platformy i pojedynczego punktu zarządzania na potrzeby rozpoznawania nazw domen i szyfrowania podczas przesyłania.
Monitorowanie punktu końcowego kondycji Umożliwia monitorowanie kondycji lub stanu systemu przez uwidocznianie punktu końcowego przeznaczonego specjalnie do tego celu. Standaryzacja punktów końcowych kondycji do uwidocznienia i poziomu analizy w wynikach w obciążeniu może pomóc w klasyfikacji problemów.
Mostek obsługi komunikatów Umożliwia komunikację między systemami obsługi komunikatów, które w inny sposób są niezgodne z powodu protokołu lub formatu. To oddzielenie zapewnia elastyczność podczas przenoszenia technologii obsługi komunikatów i zdarzeń w ramach obciążenia lub w przypadku heterogenicznych wymagań pochodzących z zależności zewnętrznych.
Wydawca/subskrybent Rozdziela składniki architektury, zastępując bezpośrednią komunikację klient-usługa lub klient-usługa z komunikacją za pośrednictwem pośredniego brokera komunikatów lub magistrali zdarzeń. Ta warstwa pośrednia umożliwia bezpieczną zmianę implementacji po stronie wydawcy lub subskrybenta bez konieczności koordynowania zmian w obu składnikach.
Kwarantanna Zapewnia, że zasoby zewnętrzne spełniają uzgodniony przez zespół poziom jakości przed upoważnieniem do korzystania z nich w obciążeniu. Automatyzacja i spójność tych testów są częścią cyklu życia tworzenia oprogramowania obciążenia i bezpiecznych praktyk wdrażania (SDP).
Przyczepka Rozszerza funkcjonalność aplikacji, hermetyzując zadania nieprimary lub przecinające w procesie towarzyszącym, który istnieje obok głównej aplikacji. Ten wzorzec zapewnia podejście do implementowania elastyczności integracji narzędzi, które może zwiększyć widoczność aplikacji bez konieczności stosowania bezpośrednich zależności implementacji przez aplikację. Umożliwia ona niezależne rozwijanie funkcji przyczepki i utrzymywanie jej niezależnie od cyklu życia aplikacji.
Drzewo figowe Zapewnia metodę systematycznego zastępowania składników działającego systemu nowymi składnikami, często podczas migracji lub modernizacji systemu. Ten wzorzec zapewnia podejście ciągłego ulepszania, w którym preferowane jest zastąpienie przyrostowe małymi zmianami w czasie, a nie duże zmiany systemowe, które są bardziej ryzykowne do wdrożenia.

Następne kroki

Przejrzyj wzorce projektowe chmury, które obsługują inne filary platformy Azure Well-Architected Framework: