Podsumowanie

Ukończone

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: