Tworzenie i wdrażanie aplikacji

Aby opracowywać i wdrażać aplikacje bezserwerowe za pomocą usługi Azure Functions, zbadaj wzorce i praktyki, skonfiguruj potoki DevOps i zaimplementuj najlepsze rozwiązania inżynierii niezawodności lokacji (SRE).

Aby uzyskać szczegółowe informacje na temat architektur bezserwerowych i usługi Azure Functions, zobacz:

Planowanie

Aby zaplanować tworzenie i wdrażanie aplikacji:

  1. Przygotowywanie środowiska deweloperskiego i konfigurowanie przepływu pracy.
  2. Projekty struktury do obsługi tworzenia aplikacji usługi Azure Functions.
  3. Identyfikowanie wyzwalaczy, powiązań i wymagań dotyczących konfiguracji aplikacji.

Omówienie architektury sterowanej zdarzeniami

Inne zdarzenie wyzwala każdą funkcję w projekcie funkcji bezserwerowych. Aby uzyskać więcej informacji na temat architektur opartych na zdarzeniach, zobacz:

Przygotowywanie środowiska projektowego

Skonfiguruj przepływ pracy i środowisko programistyczne przy użyciu narzędzi do tworzenia funkcji. Aby uzyskać szczegółowe informacje na temat narzędzi programistycznych i struktury projektu kodu usługi Functions, zobacz:

Opracowywanie zawartości

Zdecyduj o języku programowania, który ma być używany. Usługa Azure Functions obsługuje języki C#, F#, PowerShell, JavaScript, TypeScript, Java i Python. Wszystkie funkcje projektu muszą być w tym samym języku. Aby uzyskać więcej informacji, zobacz Obsługiwane języki w usłudze Azure Functions.

Definiowanie wyzwalaczy i powiązań

Wyzwalacz wywołuje funkcję, a każda funkcja musi mieć dokładnie jeden wyzwalacz. Powiązanie z funkcją deklaratywnie łączy inny zasób z funkcją. Aby uzyskać więcej informacji na temat wyzwalaczy i powiązań usługi Functions, zobacz:

Tworzenie aplikacji usługi Functions

Funkcje są zgodne z jedną zasadą odpowiedzialności: wykonaj tylko jedną rzecz. Aby uzyskać więcej informacji na temat programowania w usłudze Functions, zobacz:

Używanie rozszerzenia Durable Functions na potrzeby stanowych przepływów pracy

Rozszerzenie Durable Functions w usłudze Azure Functions umożliwia definiowanie stanowych przepływów pracy w środowisku bezserwerowym przez pisanie funkcji orkiestratora i jednostek stanowych przez pisanie funkcji jednostki. Rozszerzenie Durable Functions umożliwia zarządzanie stanem, punktami kontrolnymi i ponownymi uruchomieniami, co pozwala skupić się na logice biznesowej. Aby uzyskać więcej informacji, zobacz Co to są rozszerzenia Durable Functions.

Omówienie zimnych startów i rozwiązywanie problemów

Jeśli liczba bezserwerowych wystąpień hosta jest skalowana w dół do zera, kolejne żądanie ma dodatkowe opóźnienie ponownego uruchamiania aplikacji funkcji, nazywane zimnym startem. Aby zminimalizować wpływ na wydajność zimnych startów, zmniejsz zależności, które aplikacja usługi Functions musi załadować podczas uruchamiania i jak najmniej dużych, synchronicznych wywołań i operacji. Aby uzyskać więcej informacji na temat skalowania automatycznego i zimnych startów, zobacz Operacje funkcji bezserwerowych.

Zarządzanie wpisami tajnymi aplikacji

W przypadku zabezpieczeń nie przechowuj poświadczeń w kodzie aplikacji. Aby używać usługi Azure Key Vault z usługą Azure Functions do przechowywania i pobierania kluczy i poświadczeń, zobacz Use Key Vault references for App Service and Azure Functions (Używanie odwołań usługi Key Vault dla usług App Service i Azure Functions).

Aby uzyskać więcej informacji na temat zabezpieczeń aplikacji usługi Functions bezserwerowych, zobacz Zabezpieczenia funkcji bezserwerowych.

Wdrożenie

Aby przygotować aplikację usługi Functions bezserwerową do środowiska produkcyjnego, upewnij się, że:

  • Spełnianie wymagań dotyczących zasobów aplikacji.
  • Monitoruj wszystkie aspekty aplikacji.
  • Diagnozowanie i rozwiązywanie problemów z aplikacjami.
  • Wdrażanie nowych wersji aplikacji bez wpływu na systemy produkcyjne.

Definiowanie technologii wdrażania

Zdecyduj się na technologię wdrażania i organizuj zaplanowane wydania. Aby uzyskać więcej informacji na temat sposobu, w jaki wdrożenie aplikacji usługi Functions umożliwia niezawodne uaktualnienia bez przestojów, zobacz Technologie wdrażania w usłudze Azure Functions.

Unikaj używania zbyt wielu połączeń zasobów

Funkcje w aplikacji usługi Functions udostępniają zasoby, w tym połączenia z protokołem HTTPS, bazami danych i usługami, takimi jak Azure Storage. Jeśli wiele funkcji jest uruchomionych współbieżnie, możliwe jest wyczerpanie dostępnych połączeń. Aby uzyskać więcej informacji, zobacz Zarządzanie połączeniami w usłudze Azure Functions.

Konfigurowanie rejestrowania, alertów i monitorowania aplikacji

Usługa Application Szczegółowe informacje w usłudze Azure Monitor zbiera dane dzienników, wydajności i błędów. Aplikacja Szczegółowe informacje automatycznie wykrywa anomalie wydajności i zawiera zaawansowane narzędzia analityczne ułatwiające diagnozowanie problemów i zrozumienie użycia funkcji.

Aby uzyskać więcej informacji na temat monitorowania i rejestrowania aplikacji, zobacz:

Diagnozowanie i rozwiązywanie problemów

Dowiedz się, jak skutecznie używać diagnostyki do rozwiązywania problemów w scenariuszach proaktywnych i z pierwszymi problemami. Aby uzyskać więcej informacji, zobacz:

Wdrażanie aplikacji przy użyciu zautomatyzowanego potoku i metodyki DevOps

Pełna automatyzacja wszystkich kroków od zatwierdzenia kodu do wdrożenia produkcyjnego pozwala zespołom skupić się na tworzeniu kodu i usuwa obciążenie i potencjalny błąd ludzki kroków ręcznych. Wdrażanie nowego kodu jest szybsze i mniej ryzykowne, dzięki czemu zespoły stają się bardziej elastyczne, wydajniejsze i bardziej pewne siebie w kodzie.

Aby uzyskać więcej informacji na temat metodyki DevOps i ciągłego wdrażania (CD), zobacz:

Optymalizacja

Gdy aplikacja jest w środowisku produkcyjnym, przygotuj się do skalowania i implementowania inżynierii niezawodności lokacji (SRE).

Zapewnianie optymalnej skalowalności

Aby uzyskać informacje o czynnikach wpływających na skalowalność aplikacji usługi Functions, zobacz:

Implementowanie praktyk SRE

Inżynieria niezawodności lokacji (SRE) to sprawdzone podejście do utrzymania kluczowej niezawodności systemu i aplikacji, a jednocześnie iterowanie z szybkością zapotrzebowania na platformę handlową. Aby uzyskać więcej informacji, zobacz:

Następne kroki

Aby uzyskać praktyczne wskazówki dotyczące tworzenia i wdrażania aplikacji funkcji bezserwerowych, zobacz:

Podręcznik inżynieryjny ułatwiając zespołom i klientom pomyślne implementowanie projektów funkcji bezserwerowych, zobacz podręcznik code-with Customer/Partner Engineering (Podręcznik tworzenia kodu za pomocą klienta/partnera).