Udostępnij za pośrednictwem


Najlepsze rozwiązania w aplikacjach w chmurze

Te najlepsze rozwiązania mogą pomóc w tworzeniu niezawodnych, skalowalnych i bezpiecznych aplikacji w chmurze. Oferują one wytyczne i wskazówki dotyczące projektowania i wdrażania wydajnych i niezawodnych systemów, mechanizmów i podejść. Wiele z nich zawiera również przykłady kodu, których można używać z usługami platformy Azure. Praktyki dotyczą dowolnego systemu rozproszonego, niezależnie od tego, czy host jest platformą Azure, czy inną platformą w chmurze.

Wykaz praktyk

W tej tabeli wymieniono różne najlepsze rozwiązania. Kolumna Powiązane filary lub wzorce zawiera następujące linki:

  • Wyzwania związane z opracowywaniem rozwiązań w chmurze, które są związane z praktyką i powiązanymi wzorcami projektowymi.
  • Filary dobrze zaprojektowanej struktury microsoft Azure, na których koncentruje się praktyka.
Praktyka Podsumowanie Powiązane filary lub wzorce
Projekt interfejsu API Projektowanie internetowych interfejsów API w celu obsługi niezależności platformy przy użyciu standardowych protokołów i uzgodnionych formatów danych. Podwyższ poziom ewolucji usług, aby klienci mogli odnajdywać funkcje bez konieczności modyfikowania. Zwiększ czas odpowiedzi i zapobiegaj przejściowym błędom, obsługując częściowe odpowiedzi i zapewniając sposoby filtrowania i stronicowania danych. Projektowanie i wdrażanie, wydajność wydajności, doskonałość operacyjna
Implementacja interfejsu API Zaimplementuj internetowe interfejsy API w celu zapewnienia wydajnego, dynamicznego, skalowalnego i dostępnego interfejsu API. Wprowadź idempotentne akcje, obsługuj negocjacje zawartości i postępuj zgodnie ze specyfikacją PROTOKOŁU HTTP. Obsługa wyjątków i obsługa odnajdywania zasobów. Podaj sposoby obsługi dużych żądań i minimalizowania ruchu sieciowego. Projektowanie i wdrażanie, doskonałość operacyjna
Skalowanie automatyczne Projektowanie aplikacji w celu dynamicznego przydzielania i cofania przydzielania zasobów w celu spełnienia wymagań dotyczących wydajności i zminimalizowania kosztów. Skorzystaj z funkcji automatycznego skalowania usługi Azure Monitor i wbudowanego skalowania automatycznego oferowanego przez wiele składników platformy Azure. Wydajność, optymalizacja kosztów
Zadania w tle Zaimplementuj zadania wsadowe, zadania przetwarzania i przepływy pracy jako zadania w tle. Użyj usług platformy Azure do hostowania tych zadań. Wyzwalaj zadania ze zdarzeniami lub harmonogramami i zwracają wyniki do wywoływania zadań. Projektowanie i wdrażanie, doskonałość operacyjna
Buforowanie Zwiększ wydajność, kopiując dane do szybkiego magazynu, który znajduje się blisko aplikacji. Buforuj odczytywane często, ale rzadko modyfikowane dane. Zarządzanie wygasaniem danych i współbieżnością. Zobacz, jak wypełniać pamięci podręczne i używać usługi Azure Cache for Redis . Zarządzanie danymi, wydajność
Sieć dostarczania zawartości Użyj sieci dostarczania zawartości (CDN), aby efektywnie dostarczać zawartość internetową użytkownikom i zmniejszać obciążenie aplikacji internetowych. Pokonaj wyzwania związane z wdrażaniem, przechowywaniem wersji, zabezpieczeniami i odpornością. Zarządzanie danymi, wydajność
Data partitioning (Partycjonowanie danych) Partycjonowanie danych w celu zwiększenia skalowalności, dostępności i wydajności oraz zmniejszenia kosztów rywalizacji i magazynowania danych. Wydajne partycjonowanie poziome, pionowe i funkcjonalne. Zarządzanie danymi, wydajność, optymalizacja kosztów
Strategie partycjonowania danych (według usługi) Partycjonowanie danych w usługach Azure SQL Database i Azure Storage , takich jak Azure Table Storage i Azure Blob Storage. Fragmentuj dane, aby dystrybuować obciążenia, zmniejszyć opóźnienia i obsługiwać skalowanie w poziomie. Zarządzanie danymi, wydajność, optymalizacja kosztów
Zachowywanie nazwy hosta Dowiedz się, dlaczego ważne jest zachowanie oryginalnej nazwy hosta HTTP między zwrotnym serwerem proxy i jego aplikacją internetową zaplecza oraz jak zaimplementować to zalecenie dla najpopularniejszych usług platformy Azure. Projektowanie i implementacja, niezawodność
Zagadnienia dotyczące kodowania komunikatów Użyj komunikatów asynchronicznych do wymiany informacji między składnikami systemu. Wybierz strukturę ładunku, format kodowania i bibliotekę serializacji, która najlepiej współdziała z danymi. Obsługa komunikatów, zabezpieczenia
Monitorowanie i diagnostyka Śledzenie kondycji, użycia i wydajności systemu przy użyciu potoku monitorowania i diagnostyki. Przekształcanie danych monitorowania w alerty, raporty i wyzwalacze, które pomagają w różnych sytuacjach. Przykłady obejmują wykrywanie i rozwiązywanie problemów, wykrywanie potencjalnych problemów, spełnianie gwarancji wydajności i spełnianie wymagań inspekcji. Bezpieczeństwo operacyjne
Wskazówki dotyczące ponawiania prób dla określonych usług Używanie, dostosowywanie i rozszerzanie mechanizmów ponawiania oferowanych przez usługi platformy Azure i zestawy SDK klientów. Opracowanie systematycznego i niezawodnego podejścia do zarządzania tymczasowymi problemami z połączeniami, operacjami i zasobami. Projektowanie i implementacja, niezawodność
Obsługa błędów przejściowych Obsługa przejściowych błędów spowodowanych niedostępnymi sieciami lub zasobami. Przezwyciężyć wyzwania podczas opracowywania odpowiednich strategii ponawiania prób. Unikaj duplikowania warstw kodu ponawiania próby i innych antywzorzeców. Projektowanie i implementacja, niezawodność

Następne kroki