Porovnání aplikací Typu kontejner s jinými možnostmi kontejneru Azure

Existuje mnoho možností, jak týmy sestavovat a nasazovat aplikace nativní pro cloud a kontejnerizované aplikace v Azure. Tento článek vám pomůže pochopit, které scénáře a případy použití jsou pro Azure Container Apps nejlepší a jaké jsou v porovnání s jinými možnostmi kontejnerů v Azure, mezi které patří:

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

Důležité

Služba Azure Container Apps je aktuálně ve verzi Public Preview, zatímco tyto další možnosti jsou obecně dostupné.

Porovnání možností kontejneru

Azure Container Apps

Azure Container Apps umožňuje vytvářet bez serverů mikroslužby založené na kontejnerech. Mezi tyto funkce 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 open source technologie, jako jsou Dapr, KEDA a envoy.
  • Podporuje aplikace ve stylu Kubernetes a mikroslužby s funkcemi, jako je zjišťování služeb a rozdělování provozu.
  • Umožňuje architektury aplikací řízené událostmi díky podpoře škálování na základě provozu a stahování ze zdrojů událostí,jako jsou fronty , včetně škálování na nulu.
  • Podpora dlouhotr běžící procesy a může spouštět úlohy na pozadí.

Azure Container Apps neposkytuje přímý přístup k základním rozhraním API Kubernetes. Pokud požadujete přístup k rozhraním API Kubernetes a řídicí rovině, měli byste použít Azure Kubernetes Service. Pokud ale chcete vytvářet aplikace ve stylu Kubernetes a nepotřebujete přímý přístup ke všem nativním rozhraním API a správě clusterů Kubernetes, Container Apps nabízí plně spravované prostředí založené na osvědčených postupech. Z těchto důvodů může mnoho týmů preferovat zahájení sestavování mikroslužeb kontejnerů pomocí Azure Container Apps.

Azure App Service

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

Azure Container Instances

Azure Container Instances (ACI) poskytuje jeden pod izolovaných kontejnerů Hyper-V na vyžádání. V porovnání se službou Container Apps si ji můžeme pomyslně pou it jako možnost stavebního bloku na nižší úrovni. Koncepty, jako je škálování, vyrovnávání zatížení a certifikáty, se kontejnery ACI neposkytují. Pokud například chcete škálovat na pět instancí kontejneru, vytvoříte pět různých instancí kontejneru. Služba Azure Container Apps nabízí řadu konceptů specifických pro aplikace, včetně certifikátů, revizí, škálování a prostředí. Uživatelé často pracují s Azure Container Instances prostřednictvím jiných služeb. Můžete například Azure Kubernetes Service vrstvit orchestraci 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, pro které Azure Container Apps optimalizujete, Azure Container Instances je ideální volbou.

Azure Kubernetes Service

Azure Kubernetes Service poskytuje v Azure plně spravovanou možnost Kubernetes. 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 konfigurací a operacemi clusteru, které máte pod kontrolou a zodpovědností. Teams hledáte plně spravovanou verzi Kubernetes v Azure, Azure Kubernetes Service je ideální volbou.

Azure Functions

Azure Functions je bez serveru řešení FaaS (Functions-as-a-Service). Je optimalizovaný pro spouštění funkcí řízených událostmi pomocí programovacího modelu funkcí. Služba Azure Container Apps sdílí řadu vlastností přibližně ve škálování a integraci s událostmi, ale je optimalizovaná pro dočasné funkce nasazené jako kód nebo kontejnery. Programovací Azure Functions poskytuje výhody produktivity týmům, které se mají aktivovat při událostech a vázat se k jiným zdrojům dat. Při vytváření funkcí ve stylu FaaS je Azure Functions možnost. Programovací Azure Functions je k dispozici jako základní image kontejneru. Díky tomu je přenosná na jiné kontejnerové výpočetní platformy, což týmům umožňuje opakovaně používat kód při změně požadavků na prostředí.

Azure Spring Cloud

Azure Spring Cloud nasazení aplikací mikroslužeb do Azure Spring Boot beze změn kódu. Služba spravuje infrastrukturu aplikací Spring Cloud aby se vývojáři mohli soustředit na svůj kód. Azure Spring Cloud poskytuje správu životního cyklu pomocí komplexního monitorování a diagnostiky, správy konfigurace, zjišťování služeb, integrace CI/CD, nasazení s modrou zelenou a další. Pokud je váš tým nebo organizace převážně spring, Azure Spring Cloud je ideální volbou.

Další kroky