Porównanie usługi Container Apps z innymi opcjami kontenera platformy Azure

Istnieje wiele opcji tworzenia i wdrażania aplikacji natywnych i konteneryzowanych w chmurze na platformie Azure. Ten artykuł pomoże Ci zrozumieć, które scenariusze i przypadki użycia najlepiej nadają się dla usługi Azure Container Apps i jak porównuje się z innymi opcjami kontenerów na platformie Azure, w tym:

Nie ma idealnego rozwiązania dla każdego przypadku użycia i każdego zespołu. Poniższe wyjaśnienie zawiera ogólne wskazówki i zalecenia jako punkt wyjścia, który pomoże znaleźć najlepsze rozwiązanie dla twojego zespołu i wymagań.

Porównania opcji kontenera

Azure Container Apps

Usługa Azure Container Apps umożliwia tworzenie bezserwerowych mikrousług i zadań opartych na kontenerach. Charakterystyczne funkcje usługi Container Apps obejmują:

  • Zoptymalizowany pod kątem uruchamiania kontenerów ogólnego przeznaczenia, szczególnie w przypadku aplikacji obejmujących wiele mikrousług wdrożonych w kontenerach.
  • Obsługiwane przez platformę Kubernetes i technologie open source, takie jak Dapr, KEDA i wysłannik.
  • Obsługuje aplikacje w stylu Kubernetes i mikrousługi z funkcjami takimi jak odnajdywanie usług i dzielenie ruchu.
  • Umożliwia architektury aplikacji sterowane zdarzeniami przez obsługę skalowania na podstawie ruchu i ściągania ze źródeł zdarzeń, takich jak kolejki, w tym skalowanie do zera.
  • Obsługuje uruchamianie zadań na żądanie, zaplanowanych i opartych na zdarzeniach.

Usługa Azure Container Apps nie zapewnia bezpośredniego dostępu do podstawowych interfejsów API platformy Kubernetes. Jeśli potrzebujesz dostępu do interfejsów API platformy Kubernetes i płaszczyzny sterowania, użyj usługi Azure Kubernetes Service. Jeśli jednak chcesz tworzyć aplikacje w stylu Kubernetes i nie wymagają bezpośredniego dostępu do wszystkich natywnych interfejsów API platformy Kubernetes i zarządzania klastrem, usługa Container Apps zapewnia w pełni zarządzane środowisko oparte na najlepszych rozwiązaniach. Z tych powodów wiele zespołów może preferować rozpoczęcie tworzenia mikrousług kontenerów za pomocą usługi Azure Container Apps.

Możesz rozpocząć tworzenie pierwszej aplikacji kontenera przy użyciu przewodników Szybki start.

Azure App Service

aplikacja systemu Azure Service zapewnia w pełni zarządzane hosting dla aplikacji internetowych, w tym witryn internetowych i internetowych interfejsów API. Te aplikacje internetowe mogą być wdrażane przy użyciu kodu lub kontenerów. usługa aplikacja systemu Azure jest zoptymalizowana pod kątem aplikacji internetowych. usługa aplikacja systemu Azure Service jest zintegrowana z innymi usługami platformy Azure, takimi jak Azure Container Apps lub Azure Functions. Podczas tworzenia aplikacji internetowych usługa aplikacja systemu Azure jest idealną opcją.

Azure Container Instances

Usługa Azure Container Instances (ACI) udostępnia jeden zasobnik kontenerów izolowanych funkcji Hyper-V na żądanie. Można ją traktować jako opcję "blok konstrukcyjny" niższego poziomu w porównaniu z usługą Container Apps. Pojęcia takie jak skalowanie, równoważenie obciążenia i certyfikaty nie są dostarczane z kontenerami usługi ACI. Na przykład w celu skalowania do pięciu wystąpień kontenera należy utworzyć pięć odrębnych wystąpień kontenera. Usługa Azure Container Apps udostępnia wiele pojęć specyficznych dla aplikacji na podstawie kontenerów, w tym certyfikatów, poprawek, skalowania i środowisk. Użytkownicy często korzystają z usługi Azure Container Instances za pośrednictwem innych usług. Na przykład usługa Azure Kubernetes Service umożliwia organizowanie warstw i skalowanie na podstawie usługi ACI za pośrednictwem węzłów wirtualnych. Jeśli potrzebujesz mniej "opinii" bloku konstrukcyjnego, który nie jest zgodny ze scenariuszami, dla których usługa Azure Container Apps optymalizuje, usługa Azure Container Instances jest idealną opcją.

Azure Kubernetes Service

Usługa Azure Kubernetes Service (AKS) udostępnia w pełni zarządzaną opcję kubernetes na platformie Azure. Obsługuje on bezpośredni dostęp do interfejsu API platformy Kubernetes i uruchamia dowolne obciążenie Kubernetes. Pełny klaster znajduje się w twojej subskrypcji z konfiguracjami i operacjami klastra w ramach kontroli i odpowiedzialności. Zespoły, które szukają w pełni zarządzanej wersji platformy Kubernetes na platformie Azure, usługa Azure Kubernetes Service jest idealną opcją.

Azure Functions

Usługa Azure Functions to bezserwerowe rozwiązanie typu Functions jako usługa (FaaS). Jest zoptymalizowany pod kątem uruchamiania aplikacji opartych na zdarzeniach przy użyciu modelu programowania funkcji. Udostępnia wiele cech usługi Azure Container Apps w zakresie skalowania i integracji ze zdarzeniami, ale zoptymalizowano pod kątem funkcji efemerycznych wdrożonych jako kod lub kontenery. Model programowania usługi Azure Functions zapewnia zespołom korzyści zwiększające produktywność, które chcą wyzwolić wykonywanie funkcji na zdarzeniach i powiązać z innymi źródłami danych. Podczas tworzenia funkcji w stylu FaaS usługa Azure Functions jest idealną opcją. Model programowania usługi Azure Functions jest dostępny jako podstawowy obraz kontenera, dzięki czemu jest przenośny do innych platform obliczeniowych opartych na kontenerach, dzięki czemu zespoły mogą ponownie używać kodu w miarę zmiany wymagań środowiska.

Azure Spring Apps

Azure Spring Apps to w pełni zarządzana usługa dla deweloperów platformy Spring. Jeśli chcesz uruchomić aplikację Spring Boot, Spring Cloud lub dowolną inną aplikację Spring na platformie Azure, usługa Azure Spring Apps jest idealną opcją. Usługa zarządza infrastrukturą aplikacji Spring, aby deweloperzy mogli skupić się na swoim kodzie. Usługa Azure Spring Apps zapewnia zarządzanie cyklem życia przy użyciu kompleksowego monitorowania i diagnostyki, zarządzania konfiguracją, odnajdywania usług, integracji/ciągłego wdrażania, wdrożeń niebieskich zielonych i nie tylko.

Azure Red Hat OpenShift

Usługa Azure Red Hat OpenShift jest wspólnie zaprojektowana, obsługiwana i obsługiwana przez firmę Red Hat i Microsoft w celu zapewnienia zintegrowanego środowiska produktu i pomocy technicznej na potrzeby uruchamiania opartego na platformie Kubernetes rozwiązania OpenShift. Dzięki usłudze Azure Red Hat OpenShift zespoły mogą wybierać własne rozwiązania rejestru, sieci, magazynu i ciągłej integracji/ciągłego wdrażania lub korzystać z wbudowanych rozwiązań do zautomatyzowanego zarządzania kodem źródłowym, kompilacji kontenerów i aplikacji, wdrożeń, skalowania, zarządzania kondycją i nie tylko z usługi OpenShift. Jeśli twój zespół lub organizacja korzysta z platformy OpenShift, usługa Azure Red Hat OpenShift jest idealną opcją.

Następne kroki