Podsumowanie
Contoso Shoes to internetowy sklep obuwniczy, który chce być wysoce dostępny podczas nadchodzącego uruchomienia. Firma przeprowadziła migrację wdrożeń lokalnych do chmury dwa lata temu i skorzystała z wdrożenia modelu OpEx. W ciągu ostatnich sześciu miesięcy wystąpiły problemy z dostępnością, a operatorzy nie mogą szybko rozwiązywać problemów. Organizacja chce teraz zainwestować w misję o znaczeniu krytycznym dla obciążenia i skupić się na zwiększeniu ogólnej niezawodności i obserwacji systemu.
W poprzedniej architekturze aplikacja została wdrożona w jednym regionie i nie była w stanie wytrzymać awarii regionalnych. aplikacja systemu Azure Service i zewnętrzne narzędzia do monitorowania nie miały możliwości sprawdzenia stanu kondycji samej aplikacji. Ta luka doprowadziła do kierowania ruchu do wystąpień usługi App Service w złej kondycji, co spowodowało niepowodzenie żądań. Zespół nie mógł zobaczyć kaskadowego wpływu problemów wynikających ze składnika interfejsu API wpływającego na jego zależności platformy.
Wykonując to wyzwanie, zapoznaliśmy się z projektem o kluczowym znaczeniu na wysokim poziomie. Te informacje zostały zastosowane w ćwiczeniach, aby spełnić potrzeby firmy Contoso.
Ulepszony projekt wykrywa obniżoną wydajność co najmniej jednego składnika przy użyciu modelu kondycji. Zespół SRE może teraz szybko identyfikować i rozwiązywać problemy, zanim doprowadzą do pełnej awarii. Teraz, gdy rozwiązanie jest wdrażane w wielu regionach w modelu aktywny-aktywny, może wytrzymać kompletną awarię regionalną, zapewniając więcej szczegółowych informacji o kondycji systemu operatorom. Firma Contoso poprawiła również swoje środowisko klienta, obsługując klientów szybciej w regionie geograficznie bliżej nich.
Gratulujemy ukończenia tego projektu wyzwania. Sprawdzono twoje umiejętności w analizowaniu istniejącego przykładowego rozwiązania i projektowaniu ulepszonej architektury.
Sugerowane następne kroki
Ukończone ćwiczenia są doskonałym początkiem, ale nie obejmują wszystkich aspektów obciążenia o krytycznym znaczeniu. Kontynuuj eksplorowanie zasad i obszarów projektowania, które zostały podane w dobrze zaprojektowanych obciążeniach o znaczeniu krytycznym. Zalecamy następujące kluczowe obszary wartości:
Ciągła walidacja i testowanie
Należy w pełni zweryfikować kondycję kodu aplikacji i infrastruktury. Zakres musi obejmować wymagania dotyczące niezawodności, wydajności, dostępności, zabezpieczeń, jakości i skali.
Dowiedz się więcej: Ciągła walidacja i testowanie
Używanie wielu środowisk aplikacji
Zdecydowanie zaleca się, aby środowiska deweloperskie/testowe nie współużytkować zasobów ze środowiskiem produkcyjnym. Każde środowisko ma własny zestaw wymagań dotyczących niezawodności, pojemności i zabezpieczeń. Czy można zidentyfikować usługi w tej architekturze, które są współużytkowane w różnych środowiskach? Jak zmienisz projekt tak, aby był zgodny z tym zaleceniem?
Dowiedz się więcej: Środowiska aplikacji
Rozszerzone środowiska wdrażania
Systemy o krytycznym znaczeniu wymagają rygorystycznych rozwiązań dotyczących testowania wersji wstępnych i stałego cyklu projektowania oprogramowania (SDLC). Zamiast jednego współużytkowanego środowiska deweloperskiego należy używać wielu środowisk efemerycznych, które ściślej pasują do środowiska przejściowego i produkcyjnego. Należy użyć dedykowanego środowiska przejściowego do testowania obciążenia i wydajności, testowania chaosu, testowania akceptacji użytkowników (UAT) i testowania zabezpieczeń.
Dowiedz się więcej: Wdrożenia niebieskie/zielone
Dodawanie odporności za pomocą brokerów komunikatów
Wprowadzenie brokera komunikatów ułatwiającego tworzenie złożonych transakcji wymagających koordynacji z wieloma punktami końcowymi. Żądania mogą być kolejkowane do przetwarzania zamiast ryzykować utratę sprzedaży z powodu awarii jednego składnika.
Dowiedz się więcej: Luźno połączona architektura sterowana zdarzeniami
Dowiedz się więcej
Aby uzyskać więcej informacji na temat projektowania rozwiązań na platformie Azure, zapoznaj się z przewodnikiem Dotyczącym platformy Azure Well-Architected Framework .
Zapoznaj się z tymi architekturami referencyjnymi w Centrum architektury platformy Azure jako sposób na rozszerzenie projektu:
- Architektura punktu odniesienia o krytycznym znaczeniu
- Architektura punktu odniesienia o krytycznym znaczeniu z kontrolkami sieci