Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure tillhandahåller många sätt att vara värd för din programkod. Termen beräkning refererar till värdmodellen för de resurser som programmet körs på. Den här artikeln hjälper dig att välja en beräkningstjänst för ditt program.
Architecture
Använd följande flödesschema för att välja en kandidatberäkningstjänst.
Ladda ned en Visio-fil med den här arkitekturen.
Det föregående diagrammet refererar till två migreringsstrategier:
- Lyft och skift: En strategi för att migrera en arbetsbelastning till molnet utan att göra om programmet eller göra kodändringar. Det kallas även för värdvärd. Mer information finns i Migrerings- och moderniseringscentret för Azure-molnet. 
- Molnoptimerad: En strategi för att migrera till molnet genom att omstrukturera ett program för att dra nytta av molnbaserade funktioner. 
Utdata från det här flödesschemat är startpunkten. Utvärdera sedan tjänsten för att se om den uppfyller dina behov.
Den här artikeln innehåller flera tabeller som kan hjälpa dig att välja en tjänst. Den första kandidaten från flödesschemat kan vara olämplig för ditt program eller din arbetsbelastning. I så fall expanderar du analysen så att den inkluderar andra beräkningstjänster.
Om ditt program består av flera arbetsbelastningar utvärderar du varje arbetsbelastning separat. En komplett lösning kan innehålla två eller flera beräkningstjänster.
Förstå de grundläggande funktionerna
Om du inte är bekant med Den Azure-tjänst som du väljer i föregående avsnitt kan du läsa följande översiktsdokumentation:
- Azure App Service är en hanterad tjänst som är värd för webbappar, mobilappens serverdelar, RESTful-API:er eller automatiserade affärsprocesser. 
- Azure Batch är en hanterad tjänst för att köra storskaliga parallella och högpresterande databehandlingsprogram (HPC). 
- Azure Container Apps är en hanterad tjänst som bygger på Kubernetes, vilket förenklar distributionen av containerbaserade program i en serverlös miljö. 
- Azure Container Instances är en tjänst för att köra en enda container eller grupp med containrar i Azure. Container Instances tillhandahåller inte fullständig containerorkestrering, men du kan implementera containrar utan att behöva etablera virtuella datorer (VM) eller använda en tjänst på högre nivå. 
- Azure Functions är en tjänst som tillhandahåller hanterade funktioner som körs baserat på en mängd olika utlösartyper för händelsedrivna program. 
- Azure Kubernetes Service (AKS) är en hanterad Kubernetes-tjänst för att köra containerbaserade program. 
- Azure Red Hat OpenShift är ett fullständigt hanterat OpenShift-kluster för att köra containrar i produktion med Kubernetes. 
- Azure Service Fabric är en distribuerad systemplattform som kan köras i många miljöer, inklusive Azure eller lokalt. 
- Azure VMware Solution är en hanterad tjänst för att köra VMware-arbetsbelastningar internt i Azure. 
- Azure Virtual Machines är en tjänst där du distribuerar och hanterar virtuella datorer i ett virtuellt Azure-nätverk. 
Förstå värdmodellerna
För värdmodeller finns molntjänster i tre kategorier:
- Med Infrastruktur som en tjänst (IaaS) kan du etablera virtuella datorer tillsammans med associerade nätverks- och lagringskomponenter. Sedan kan du distribuera valfri programvara och program på dessa virtuella datorer. Den här modellen är närmast en traditionell lokal miljö. Microsoft hanterar infrastrukturen och du hanterar de virtuella datorerna. 
- PaaS (Platform as a Service) tillhandahåller en hanterad värdmiljö där du kan distribuera ditt program utan att behöva hantera virtuella datorer eller nätverksresurser. App Service och Container Apps är PaaS-tjänster. 
- Med Functions as a service (FaaS) kan du distribuera koden till tjänsten, som kör den automatiskt. Azure Functions är en FaaS-tjänst. - Anmärkning - Azure Functions är ett azure-serverlöst beräkningserbjudande. Mer information om hur den här tjänsten jämförs med andra serverlösa Azure-erbjudanden, till exempel Azure Logic Apps för serverlösa arbetsflöden, finns i Välja rätt integrerings- och automatiseringstjänster i Azure. 
Det finns ett spektrum från IaaS till fullständigt hanterad PaaS. Virtuella Azure-datorer kan till exempel skalas automatiskt med hjälp av VM-skalningsuppsättningar. Den här funktionen är inte strikt PaaS, men den liknar hanteringsfunktionerna i PaaS.
Det finns en kompromiss mellan kontroll och enkel hantering. IaaS ger mest kontroll, flexibilitet och portabilitet. Du måste dock etablera, konfigurera och hantera de virtuella datorer och nätverkskomponenter som du skapar. FaaS-tjänster hanterar automatiskt nästan alla aspekter av att köra ett program. PaaS tillhandahåller partiell hantering samtidigt som vissa användarkonfigurationer krävs.
| Tjänster | Programsammansättning | Täthet | Minsta antal noder | Statushantering | Webbhotell | 
|---|---|---|---|---|---|
| Virtual Machines | Agnostiker | Agnostiker | 1 2 | Tillståndslös eller tillståndskänslig | Agnostiker | 
| App Service | Program, containrar | Flera appar för varje instans med hjälp av App Service-plan | 1 | Tillståndslös | Inbyggd | 
| Azure-funktioner | Funktioner, containrar | Serverlös 1 | Serverlös 1 | Tillståndslös eller tillståndskänslig 6 | Ej tillämpligt | 
| AKS | Containers | Flera containrar för varje nod | 3 3 | Tillståndslös eller tillståndskänslig | Agnostiker | 
| Containerapplikationer | Containers | Serverless | Serverless | Tillståndslös eller tillståndskänslig | Agnostiker | 
| Container Instances | Containers | Inga dedikerade instanser | Inga dedikerade noder | Tillståndslös | Agnostiker | 
| Azure Red Hat OpenShift | Containers | Flera containrar för varje nod | 6 5 | Tillståndslös eller tillståndskänslig | Agnostiker | 
| Service Fabric | Tjänster, körbara gästtjänster, containrar | Flera tjänster för varje virtuell dator | 5 3 | Tillståndslös eller tillståndskänslig | Agnostiker | 
| Omgång | Schemalagda jobb | Flera appar för varje virtuell dator | 1 4 | Tillståndslös | Nej | 
| Azure VMware-lösning | Agnostiker | Agnostiker | 3 7 | Tillståndslös eller tillståndskänslig | Agnostiker | 
Anteckningar:
1För Azure Functions är förbrukningsplanen serverlös. För en App Service-plan körs funktioner på de virtuella datorer som allokerats för planen. Välj rätt tjänstplan för Azure Functions.
2Högre serviceavtal (SLA) som har två eller flera instanser.
3Rekommenderas för produktionsmiljöer.
4Kan skalas ned till noll när jobbet har slutförts.
5Tre primära noder och tre arbetsnoder.
6När du använder varaktiga funktioner.
7Se Värdar.
Nätverkande
| Tjänster | Integrering av virtuellt nätverk | Hybridanslutning | 
|---|---|---|
| Virtual Machines | Understödd | Understödd | 
| App Service | Stöds 1 | Stöds 2 | 
| Azure-funktioner | Stöds 1 | Stöds 3 | 
| AKS | Supported | Understödd | 
| Containerapplikationer | Understödd | Understödd | 
| Container Instances | Supported | Supported | 
| Azure Red Hat OpenShift | Supported | Understödd | 
| Service Fabric | Understödd | Understödd | 
| Omgång | Understödd | Understödd | 
| Azure VMware-lösning | Supported | Supported | 
Anteckningar:
1Kräver App Service Environment eller en dedikerad beräkningsprisnivå.
2Använd App Service Hybrid-anslutningar.
3Kräver en App Service-plan eller Azure Functions Premium-plan.
DevOps
| Tjänster | Lokal felsökning | Programmeringsmodell | Programuppdatering | 
|---|---|---|---|
| Virtual Machines | Agnostiker | Agnostiker | Inget inbyggt stöd | 
| App Service | IIS Express, andra 1 | Webb- och API-program, webbjobb för bakgrundsuppgifter | Distributionsplatser | 
| Azure-funktioner | Visual Studio eller Azure Functions CLI | Serverlös, händelsedriven | Distributionsplatser | 
| AKS | Minikube, Docker, andra | Agnostiker | Löpande uppdatering | 
| Containerapplikationer | Lokal containerkörning | Agnostiker | Revisionshantering | 
| Container Instances | Lokal containerkörning | Agnostiker | Ej tillämpligt | 
| Azure Red Hat OpenShift | Minikube, Docker, andra | Agnostiker | Löpande uppdatering | 
| Service Fabric | Lokalt nodkluster | Körbar gäst, tjänstmodell, aktörsmodell, containrar | Löpande uppgradering för varje tjänst | 
| Omgång | Stöds inte | Kommandoradsprogram | Ej tillämpligt | 
| Azure VMware-lösning | Agnostiker | Agnostiker | Inget inbyggt stöd | 
Note:
1Alternativ är IIS Express för ASP.NET eller node.js (iisnode), PHP-webbserver, Azure Toolkit for IntelliJ och Azure Toolkit for Eclipse. App Service stöder även fjärrfelsökning av distribuerade webbappar.
Skalbarhet
| Tjänster | Autoscaling | Lastbalanserare | Skalningsgräns3 | 
|---|---|---|---|
| Virtual Machines | Skalningsuppsättningar för virtuella datorer | Azure Load Balancer (belastningsutjämnare) | Plattformsbild: 1 000 noder för varje skalningsuppsättning. Anpassad avbildning: 600 noder för varje skalningsuppsättning. | 
| App Service | Inbyggd tjänst | Integrerad | 30 instanser, 100 med App Service Environment | 
| Azure-funktioner | Inbyggd tjänst | Integrerad | 200 instanser för varje funktionsapp | 
| AKS | Autoskalning av poddar1, automatisk skalning av kluster2 | Load Balancer eller Azure Application Gateway | 5 000 noder när du använder serviceavtal för drifttid | 
| Containerapplikationer | Skalningsregler4 | Integrerad | 15 miljöer för varje region (standardgräns), obegränsade containerappar för varje miljö och repliker för varje containerapp (beroende på tillgängliga kärnor) | 
| Container Instances | Stöds inte | Inget inbyggt stöd | 100 containergrupper för varje prenumeration (standardgräns) | 
| Azure Red Hat OpenShift | Autoskalning av poddar, autoskalning av kluster | Load Balancer eller Application Gateway | 250 noder för varje kluster (standardgräns) | 
| Service Fabric | Skalningsuppsättningar för virtuella datorer | Lastbalanserare | 100 noder för varje VM-skalningsuppsättning | 
| Omgång | Ej tillämpligt | Lastbalanserare | Kärngräns på 900 dedikerade och 100 lågprioritet (standardgräns) | 
| Azure VMware-lösning | Inbyggd tjänst5 | Integrerad6 | 3 till 16 VMware ESXi-värdar per VMware vCenter | 
Anteckningar:
1Se Autoskala poddar.
2Se Skala ett kluster automatiskt för att uppfylla programkraven på AKS.
3Se Azure-prenumerations- och tjänstgränser, kvoter och begränsningar
4Se Ange skalningsregler i Container Apps
5Se Skala Azure VMware-lösning
6Se VMware NSX
Availability
| Tjänster | Redundansalternativ för flera regioner | 
|---|---|
| Virtual Machines | Azure Traffic Manager, Azure Front Door och lastbalanserare mellan regioner | 
| App Service | Traffic Manager och Azure Front Door | 
| Azure-funktioner | Traffic Manager och Azure Front Door | 
| AKS | Traffic Manager, Azure Front Door och Multiregion Cluster | 
| Containerapplikationer | Traffic Manager och Azure Front Door | 
| Container Instances | Traffic Manager och Azure Front Door | 
| Azure Red Hat OpenShift | Traffic Manager och Azure Front Door | 
| Service Fabric | Traffic Manager, Azure Front Door och lastbalanserare mellan regioner | 
| Omgång | Ej tillämpligt | 
| Azure VMware-lösning | Ej tillämpligt | 
Guidad utbildning om tjänstgarantier finns i Azure-arkitektur och tjänstgarantier.
Security
Granska och förstå tillgängliga säkerhetskontroller och synlighet för var och en av följande tjänster:
- AKS
- App Service-
- Azure Functions
- Virtuella datorer för Linux
- Azure VMware-lösning
- Virtuella datorer för Windows
- Batch
- Containerapplikationer
- Containervarianter
- Service Fabric
Andra kriterier
Överväg gränser och kostnader
Tillsammans med de tidigare jämförelsetabellerna gör du en mer detaljerad utvärdering av följande aspekter av kandidattjänsten:
Bidragsgivare
Microsoft ansvarar för den här artikeln. Följande deltagare skrev den här artikeln.
- Ayobami Ayodeji | Senior programchef
- Jelle Druyts | Huvudtjänsttekniker
- Martin Gjoshevski | Senior Service Engineer
- Phil Huang | Senior Cloud Solution Architect
- Julie Ng | Senior Service Engineer
- Paolo Salvatori | Huvudtjänsttekniker
Om du vill se linkedin-profiler som inte är offentliga loggar du in på LinkedIn.