Sdílet prostřednictvím


Porovnání kontejnerových aplikací s dalšími možnostmi kontejneru Azure

Týmy můžou vytvářet a nasazovat nativní cloudové a kontejnerizované aplikace v Azure. Tento článek vám pomůže pochopit, které scénáře a případy použití jsou nejvhodnější pro Azure Container Apps a jak se porovnávají s dalšími možnostmi kontejneru v Azure, mezi které patří:

Neexistuje žádné dokonalé řešení pro každý případ použití a každý tým. Následující vysvětlení obsahuje obecné pokyny a doporučení jako výchozí bod, který vám pomůže najít nejvhodnější pro váš tým a vaše požadavky.

Porovnání možností kontejneru

Azure Container Apps

Azure Container Apps umožňuje vytvářet bezserverové mikroslužby a úlohy založené na kontejnerech. Mezi charakteristické rysy kontejnerových aplikací patří:

  • Optimalizováno pro spouštění kontejnerů pro obecné účely, zejména pro aplikace, které pokrývají mnoho mikroslužeb nasazených v kontejnerech.
  • Využívá kubernetes a opensourcové technologie, jako je Dapr, KEDA a envoy.
  • Podporuje aplikace a mikroslužby ve stylu Kubernetes s funkcemi, jako je zjišťování služeb a rozdělení provozu.
  • Umožňuje architekturám aplikací řízených událostmi tím, že podporuje škálování na základě provozu a načítání ze zdrojů událostí, jako jsou fronty, včetně škálování na nulu.
  • Podporuje spouštění úloh na vyžádání, naplánovaných úloh a úloh řízených událostmi.

Azure Container Apps neposkytuje přímý přístup k podkladovým rozhraním API Kubernetes. Pokud potřebujete přístup k rozhraním API Kubernetes a řídicí rovině, měli byste použít službu Azure Kubernetes Service. Pokud ale chcete vytvářet aplikace ve stylu Kubernetes a nevyžadujete přímý přístup ke všem nativním rozhraním API Kubernetes a správě clusterů, služba Container Apps poskytuje plně spravované prostředí na základě osvědčených postupů. Z těchto důvodů mnoho týmů dává přednost vytváření mikroslužeb kontejnerů pomocí Azure Container Apps.

První aplikaci kontejneru můžete začít vytvářet pomocí rychlých startů.

Azure App Service

služba Aplikace Azure poskytuje plně spravované hostování webových aplikací, včetně webů a webových rozhraní API. Tyto webové aplikace můžete nasadit pomocí kódu nebo kontejnerů. služba Aplikace Azure je optimalizovaná pro webové aplikace. služba Aplikace Azure je integrovaná s dalšími službami Azure, včetně Azure Container Apps nebo Azure Functions. Při vytváření webových aplikací je ideální volbou služba Aplikace Azure Service.

Azure Container Instances

Azure Container Instances (ACI) poskytuje jeden pod izolovaných kontejnerů Hyper-V na vyžádání. Ve srovnání s kontejnerovými aplikacemi si ji můžete představit jako možnost "stavebního bloku" nižší úrovně. Koncepty, jako je škálování, vyrovnávání zatížení a certifikáty, nejsou k dispozici s kontejnery ACI. Pokud například chcete škálovat na pět instancí kontejneru, vytvoříte pět různých instancí kontejneru. Azure Container Apps poskytuje řadu konceptů specifických pro aplikace nad kontejnery, včetně certifikátů, revizí, škálování a prostředí. Uživatelé často komunikují se službou Azure Container Instances prostřednictvím jiných služeb. Azure Kubernetes Service může například orchestraci vrstvit a škálovat nad ACI prostřednictvím virtuálních uzlů. Pokud potřebujete méně "názorný" stavební blok, který není v souladu se scénáři optimalizace Azure Container Apps pro, je služba Azure Container Instances ideální volbou.

Azure Kubernetes Service

Azure Kubernetes Service (AKS) poskytuje plně spravovanou možnost Kubernetes v Azure. Podporuje přímý přístup k rozhraní Kubernetes API a spouští všechny úlohy Kubernetes. Celý cluster se nachází ve vašem předplatném s konfiguracemi a operacemi clusteru v rámci vaší kontroly a odpovědnosti. Týmy hledají plně spravovanou verzi Kubernetes v Azure, Azure Kubernetes Service je ideální volbou.

Azure Functions

Azure Functions je řešení Bezserverové funkce jako služba (FaaS). Je optimalizovaná pro spouštění aplikací řízených událostmi pomocí programovacího modelu funkcí. Sdílí mnoho charakteristik s Azure Container Apps v rámci škálování a integrace s událostmi, ale optimalizovaných pro dočasné funkce nasazené jako kód nebo kontejnery. Programovací model Azure Functions poskytuje výhody produktivity pro týmy, které chtějí aktivovat spouštění funkcí na událostech a svázat je s jinými zdroji dat. Při vytváření funkcí ve stylu FaaS je azure Functions ideální volbou. Programovací model Azure Functions je k dispozici jako základní image kontejneru, takže je přenositelný do jiných výpočetních platforem založených na kontejnerech, což týmům umožňuje opakovaně používat kód při změně požadavků na prostředí.

Azure Spring Apps

Azure Spring Apps je plně spravovaná služba pro vývojáře Spring. Pokud chcete spouštět Spring Boot, Spring Cloud nebo jiné aplikace Spring v Azure, je ideální volbou Azure Spring Apps. Služba spravuje infrastrukturu aplikací Spring, aby se vývojáři mohli soustředit na svůj kód. Azure Spring Apps poskytuje správu životního cyklu pomocí komplexního monitorování a diagnostiky, správy konfigurace, zjišťování služeb, integrace CI/CD, modrých zelených nasazení a dalších.

Azure Red Hat OpenShift

Azure Red Hat OpenShift je integrovaný produkt s Red Hatem a Microsoftem společně navrženým, provozovaným a podporovaným. Tato spolupráce poskytuje integrované prostředí pro produkty a podporu pro spouštění OpenShiftu s podporou Kubernetes. S Azure Red Hat OpenShiftem si týmy můžou zvolit vlastní řešení registru, sítě, úložiště a CI/CD. Alternativně můžou využít integrovaná řešení pro automatizovanou správu zdrojového kódu, sestavení kontejnerů a aplikací, nasazení, škálování, správu stavu a další z OpenShiftu. Pokud váš tým nebo organizace používá OpenShift, je ideální volbou Azure Red Hat OpenShift.

Další kroky