Välj en Azure-beräkningstjänst för ditt program
Azure erbjuder ett antal olika sätt att vara värd för din programkod. Termen beräkning är värdmodellen för de beräkningsresurser som ditt program körs på. Följande flödesschema hjälper dig att välja en beräkningstjänst för ditt program.
Om ditt program består av flera arbetsbelastningar ska du utvärdera varje arbetsbelastning separat. En fullständig lösning kan innehålla två eller flera beräkningstjänster.
Välj en kandidattjänst
Använd följande flödesschema för att välja en kandidatbearbetningstjänst.

Definitioner:
- "Lift and shift" är en strategi för att migrera en arbetsbelastning till molnet utan att göra om programmet eller göra kodändringar. Kallas även värd för. Mer information finns i Azures migrerings- och moderniseringscenter.
- Molnoptimerad är 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 en startpunkt att överväga. Utför sedan en mer detaljerad utvärdering av 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 fatta dessa kompromissbeslut. Baserat på den här analysen kanske du upptäcker att den första kandidaten inte är lämplig för just ditt program eller din arbetsbelastning. I så fall expanderar du analysen så att den innehåller andra beräkningstjänster.
Anteckning
Läs mer om att granska dina beräkningskrav för molnanpassning i Microsoft Cloud Adoption Framework för Azure.
Förstå de grundläggande funktionerna
Om du inte är bekant med den Azure-tjänst som valdes i föregående steg kan du läsa översiktsdokumentationen för att förstå grunderna i tjänsten.
- App Service. En hanterad tjänst som fungerar som värd för webbappar, serverdel för mobilappar, RESTful-API:er eller automatiserade affärsprocesser.
- Azure Spring Cloud. En hanterad tjänst som utformats och optimerats för Spring Boot appar.
- Azure Kubernetes Service (AKS). En hanterad Kubernetes-tjänst för att köra program i containrar.
- Batch. En hanterad tjänst för att köra storskaliga parallella program och HPC-program (databehandling med höga prestanda)
- Container Instances. Det snabbaste och enklaste sättet att köra en container i Azure, utan att behöva etablera några virtuella datorer och utan att behöva använda en tjänst på högre nivå.
- Functions. En hanterad FaaS-tjänst.
- Service Fabric. En distribuerad systemplattform som kan köras i många miljöer, inklusive Azure eller lokalt.
- Virtuella datorer. Distribuera och hantera virtuella datorer i ett virtuellt Azure-nätverk.
Förstå värdmodellerna
Molntjänster, inklusive Azure-tjänster, är vanligtvis indela i tre kategorier: IaaS, PaaS eller FaaS. (Det finns även SaaS, programvara som en tjänst, som inte omfattas av den här artikeln.) Det är bra att förstå skillnaderna.
Med infrastruktur som en tjänst (IaaS) kan du etablera enskilda virtuella datorer tillsammans med de associerade nätverks- och lagringskomponenterna. Sedan distribuerar du vilken programvara och vilka appar du vill på de virtuella datorerna. Den här modellen är närmast en traditionell lokal miljö, förutom att Microsoft hanterar infrastrukturen. Du kan fortfarande hantera enskilda virtuella datorer.
Med Platform-as-a-Service (PaaS) får du åtkomst till en hanterad värdmiljö där du kan distribuera programmet utan att behöva hantera virtuella datorer eller nätverksresurser. Azure App Service är en PaaS-tjänst.
Functions-as-a-Service (FaaS) tar det hela ett steg längre, så att du inte behöver oroa dig för värdmiljön. I en FaaS-modell distribuerar du helt enkelt koden så kör tjänsten den automatiskt. Azure Functions är en FaaS-tjänst.
Anteckning
Azure Functions är ett serverlöst beräkningserbjudande i Azure. Du kan läsa Välja rätt integrerings- och automatiseringstjänster i Azure för att veta hur den här tjänsten kan jämföras med andra serverlösa Azure-erbjudanden, till exempel Logic Apps som tillhandahåller serverlösa arbetsflöden.
Det finns ett spektrum från IaaS till ren PaaS. Virtuella Azure-datorer kan till exempel autoskala med hjälp av VM-skalningsuppsättningar. Den här funktionen för automatisk skalning är inte strikt PaaS, men det är den typ av hanteringsfunktion som finns i PaaS-tjänster.
I allmänhet finns det en kompromiss mellan kontroll och enkel hantering. IaaS ger mest kontroll, flexibilitet och portabilitet, men du måste 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-tjänster ligger någonstans mittemellan.
| Kriterie | Virtual Machines | App Service | Azure Spring Cloud | Service Fabric | Azure Functions | Azure Kubernetes Service | Container Instances | Azure Batch |
|---|---|---|---|---|---|---|---|---|
| Programmets sammansättning | Oberoende | Program, containrar | Program, mikrotjänster | Tjänster, körbara gästfiler, containrar | Functions | Containers | Containers | Schemalagda jobb |
| Densitet | Oberoende | Flera appar per instans via App Service-planer | Flera appar per tjänstinstans | Flera tjänster per virtuell dator | Serverlös 1 | Flera containrar per nod | Inga dedikerade instanser | Flera appar per virtuell dator |
| Minsta antalet noder | 1 2 | 1 | 2 | 5 3 | Serverlös 1 | 3 3 | Inga dedikerade noder | 1 4 |
| Tillståndshantering | Tillståndslös eller tillståndskänslig | Tillståndslös | Tillståndslös | Tillståndslös eller tillståndskänslig | Tillståndslös | Tillståndslös eller tillståndskänslig | Tillståndslös | Tillståndslös |
| Webbvärd | Oberoende | Inbyggd | Inbyggd | Oberoende | Inte tillämpligt | Oberoende | Oberoende | No |
| Kan distribueras till dedikerade virtuella nätverk? | Stöds | Stöds5 | Stöds | Stöds | Stöds 5 | Stöds | Stöds | Stöds |
| Hybridanslutning | Stöds | Stöds 6 | Stöds | Stöds | Stöds 7 | Stöds | Stöds inte | Stöds |
Kommentarer
- Om du använder Förbrukningsplan. Kör funktioner på virtuella datorer som har allokerats för din App Service-plan, om du använder App Service-plan. Se Välja rätt tjänstplan för Azure Functions.
- Högre SLA med två eller flera instanser.
- Rekommenderas för produktionsmiljöer.
- Kan skala ned till noll efter att jobbet har slutförts.
- Kräver App Service Environment (ASE).
- Använd Azure App Service hybridanslutningar.
- Kräver App Service plan eller Azure Functions Premium plan.
DevOps
| Kriterie | Virtual Machines | App Service | Azure Spring Cloud | Service Fabric | Azure Functions | Azure Kubernetes Service | Container Instances | Azure Batch |
|---|---|---|---|---|---|---|---|---|
| Lokal felsökning | Oberoende | IIS Express, andra 1 | Visual Studio Code, Intellij, Eclipse | Lokalt nodkluster | Visual Studio eller Azure Functions CLI | Minikube, andra | Körmiljö för lokal container | Stöds inte |
| Programmeringsmodell | Oberoende | Webb- och API-program, WebJobs för bakgrundsaktiviteter | Spring Boot, Steeltoe | Körbara gästfiler, tjänstemodell, aktörmodell, containrar | Funktioner med utlösare | Oberoende | Oberoende | Kommandoradsprogram |
| Programuppdatering | Inget inbyggt stöd | Distributionsfack | Löpande uppgradering, blågrön distribution | Löpande uppgradering (per tjänst) | Distributionsfack | Löpande uppdatering | Inte tillämpligt |
Kommentarer
- Alternativ inkluderar IIS Express för ASP.NET eller node.js (iisnode) PHP-webbserver: Azure-verktyg för IntelliJ, Azure-verktyg för Eclipse. App Service har också stöd för fjärrfelsökning av distribuerad webbapp.
- Se Resource Manager, regioner, API-versioner och scheman.
Skalbarhet
| Kriterie | Virtual Machines | App Service | Azure Spring Cloud | Service Fabric | Azure Functions | Azure Kubernetes Service | Container Instances | Azure Batch |
|---|---|---|---|---|---|---|---|---|
| Automatisk skalning | Skalningsuppsättningar för virtuella datorer | Inbyggd tjänst | Inbyggd tjänst | Skalningsuppsättningar för virtuella datorer | Inbyggd tjänst | Automatisk poddskalning 1, automatisk klusterskalning 2 | Stöds inte | Ej tillämpligt |
| Lastbalanserare | Azure Load Balancer | Integrerat | Integrerat | Azure Load Balancer | Integrerat | Azure Load Balancer eller Application Gateway | Inget inbyggt stöd | Azure Load Balancer |
| Skalningsgräns3 | Plattformsavbildning: 1 000 noder per skalningsuppsättning, anpassad avbildning: 600 noder per skalningsuppsättning | 30 instanser, 100 med App Service-miljön | 500 appinstanser i Standard | 100 noder per skalningsuppsättning | 200 instanser per funktionsapp | 100 noder per kluster (standardgräns) | 20 containergrupper per prenumeration (standardgräns). | 20 kärngräns (standardgräns). |
Kommentarer
- Se Autoskala poddar.
- Se Skala ett kluster automatiskt för att uppfylla programkrav på Azure Kubernetes Service (AKS).
- Se Azure-prenumeration och tjänstbegränsningar, kvoter och begränsningar.
Tillgänglighet
| Kriterie | Virtual Machines | App Service | Azure Spring Cloud | Service Fabric | Azure Functions | Azure Kubernetes Service | Container Instances | Azure Batch |
|---|---|---|---|---|---|---|---|---|
| SLA | SLA för Virtual Machines | SLA för App Service | SLA för Azure Spring Cloud | SLA för Service Fabric | SLA för Functions | SLA för AKS | Serviceavtal för Container Instances | SLA för Azure Batch |
| Redundans i flera regioner | Traffic Manager | Traffic Manager | Traffic Manager, kluster för flera regioner | Azure Front Door | Traffic Manager | Stöds inte | Stöds inte |
Guidad utbildning om tjänstgarantier finns i Core Cloud Services – Azure-arkitektur och tjänstgarantier.
Säkerhet
Granska och förstå tillgängliga säkerhetskontroller och synlighet för varje tjänst
- App Service
- App-Spring Cloud
- Azure Kubernetes Service
- Batch
- Container Instances
- Funktioner
- Service Fabric
- Virtuell dator – Windows
- Virtuell dator – LINUX
Andra kriterier
| Kriterie | Virtual Machines | App Service | App-Spring Cloud | Service Fabric | Azure Functions | Azure Kubernetes Service | Container Instances | Azure Batch |
|---|---|---|---|---|---|---|---|---|
| SSL | Konfigurerad i virtuell dator | Stöds | Stöds | Stöds | Stöds | Ingress-kontrollant | Använda sidovagnscontainer | Stöds |
| Cost | Windows, Linux | App Service -priser | Azure Spring Cloud prissättning | Prissättning för Service Fabric | Prissättning för Azure Functions | AKS-priser | Container Instances prissättning | Prissättning för Azure Batch |
| Lämpliga arkitekturstilar | N-nivå, Big Compute (HPC) | Web-Queue-Worker, N-tier | Spring Boot, Mikrotjänster | Mikrotjänster, händelsedriven arkitektur | Mikrotjänster, händelsedriven arkitektur | Mikrotjänster, händelsedriven arkitektur | Mikrotjänster,aktivitetsautomatisering, batchjobb | Big Compute (HPC) |
Utdata från det här flödesschemat är en startpunkt att överväga. Utför sedan en mer detaljerad utvärdering av tjänsten för att se om den uppfyller dina behov.
Ta hänsyn till gränser och kostnader
Utför en mer detaljerad utvärdering och titta på följande aspekter av tjänsten:
Nästa steg
- Core Cloud Services – Azure-beräkningsalternativ. Den Microsoft Learn modulen utforskar hur beräkningstjänster kan lösa vanliga affärsbehov.