Automatisk skalning i Azure App Service

Kommentar

Automatisk skalning är i förhandsversion. Den är tillgänglig för prisnivåer för Premium V2 (P1V2, P2V2, P3V2) och Premium V3 (P1V3, P2V3, P3V3) och stöds för alla apptyper: Windows, Linux och Windows-container. Automatisk skalning stöds inte för distributionsfacktrafik.

Automatisk skalning är ett nytt skalningsalternativ som automatiskt hanterar skalningsbeslut för dina webbappar och App Service-planer. Det skiljer sig från den befintliga autoskalningen i Azure, där du kan definiera skalningsregler baserat på scheman och resurser. Med automatisk skalning kan du justera skalningsinställningarna för att förbättra appens prestanda och undvika problem med kallstart. Plattformen förinstallerar instanser för att fungera som en buffert vid utskalning, vilket säkerställer smidiga prestandaövergångar. Du kan använda Application Insights Live Metrics för att kontrollera ditt aktuella instansantal och performanceCounters för att se instansantalets historik. Du debiteras per sekund för varje instans, inklusive förvärmade instanser.

En jämförelse av utskalning och skalning av tillgängliga alternativ i App Service:

  Manuell Automatisk skalning Automatisk skalning
Tillgängliga prisnivåer Grundläggande och uppåt Standard och Upp Premium V2 (P1V2, P2V2, P3V2) och Premium V3 (P1V3, P2V3, P3V3)
Regelbaserad skalning Nej Ja Nej, plattformen hanterar utskalningen och in baserat på HTTP-trafik.
Schemabaserad skalning Nej Ja Nej
Alltid redo instanser Nej, webbappen körs på antalet manuellt skalbara instanser. Nej, webbappen körs på andra instanser som är tillgängliga under utskalningsåtgärden, baserat på tröskelvärdet som definierats för regler för autoskalning. Ja (minst 1)
Förinställda instanser Nej Nej Ja (standard 1)
Maximalt per app Nej No Ja

Så här fungerar automatisk skalning

Du aktiverar automatisk skalning för en App Service-plan och konfigurerar ett antal instanser för var och en av webbapparna. När webbappen börjar ta emot HTTP-trafik övervakar App Service belastningen och lägger till instanser. Resurser kan delas när flera webbappar i en App Service-plan krävs för att skala ut samtidigt.

Här följer några scenarier där du bör skala ut automatiskt:

  • Du vill inte konfigurera regler för autoskalning baserat på resursmått.
  • Du vill att dina webbappar inom samma App Service-plan ska skalas olika och oberoende av varandra.
  • Webbappen är ansluten till en databas eller ett äldre system som kanske inte skalas lika snabbt som webbappen. Med skalning kan du automatiskt ange det maximala antalet instanser som apptjänstplanen kan skala till. Den här inställningen hjälper webbappen att inte överbelasta serverdelen.

Aktivera automatisk skalning

Maximal burst är det högsta antalet instanser som apptjänstplanen kan öka till baserat på inkommande HTTP-begäranden. För Premium v2- och v3-abonnemang kan du ange en maximal burst på upp till 30 instanser. Den maximala bursten måste vara lika med eller större än det antal arbetare som angetts för App Service-planen.

Viktigt!

Always ON måste inaktiveras för att använda automatisk skalning.

Om du vill aktivera automatisk skalning navigerar du till webbappens vänstra meny och väljer Skala ut (App Service-plan). Välj Automatisk (förhandsversion), uppdatera högsta burst-värde och välj knappen Spara .

Automatic scaling in Azure portal

Ange minsta antal webbappsinstanser

Always Ready-instanser är en inställning på appnivå för att ange det minsta antalet instanser. Om belastningen överskrider vad de alltid redo instanserna kan hantera läggs ytterligare instanser till (upp till den angivna maximala bursten för App Service-planen).

Om du vill ange det minsta antalet webbappsinstanser går du till webbappens vänstra meny och väljer Skala ut (App Service-plan). Uppdatera värdet Always ready instances (Alltid redo instanser) och välj knappen Spara.

Screenshot of always ready instances

Ange maximalt antal webbappsinstanser

Den maximala skalningsgränsen anger det maximala antalet instanser som en webbapp kan skala till. Den maximala skalningsgränsen hjälper när en underordnad komponent som en databas har begränsat dataflöde. Maxvärdet per app kan vara mellan 1 och den maximala bursten.

Om du vill ange det maximala antalet webbappsinstanser går du till webbappens vänstra meny och väljer Skala ut (App Service-plan). Välj Framtvinga utskalningsgräns, uppdatera maximal skalningsgräns och välj knappen Spara .

Screenshot of maximum scale limit

Uppdatera förinställda instanser

Den förvärmda instansinställningen tillhandahåller varma instanser som en buffert under HTTP-skalnings- och aktiveringshändelser. Förinställda instanser fortsätter att buffrar tills den maximala utskalningsgränsen har nåtts. Standardantalet för förvärmd instans är 1 och för de flesta scenarier bör det här värdet förbli som 1.

Du kan inte ändra den förvärmde instansinställningen i portalen. Du måste i stället använda Azure CLI.

Inaktivera automatisk skalning

Om du vill inaktivera automatisk skalning går du till webbappens vänstra meny och väljer Skala ut (App Service-plan). Välj Manuell och välj knappen Spara .

Screenshot of manual scaling

Har automatisk skalning stöd för Azure-funktionsappar?

Nej, du kan bara ha Azure App Service-webbappar i App Service-planen där du vill aktivera automatisk skalning. Om du har befintliga Azure Functions-appar i samma App Service-plan, eller om du skapar nya Azure Functions-appar, inaktiveras automatisk skalning. För Functions rekommenderar vi att du använder Azure Functions Premium-planen i stället.

Fler resurser