Appåtgärder för serverlösa funktioner

Den här artikeln beskriver överväganden för Azure-åtgärder för serverlösa Functions-program. För att stödja Functions-appar måste driftpersonalen:

  • Förstå och implementera värdkonfigurationer.
  • Framtidssäker skalbarhet genom att automatisera infrastrukturetablering.
  • Upprätthålla affärskontinuitet genom att uppfylla kraven på tillgänglighet och haveriberedskap.

Planering

Planera åtgärder genom att förstå dina arbetsbelastningar och deras krav och sedan utforma och konfigurera de bästa alternativen för kraven.

Välj ett värdalternativ

Azure Functions Runtime ger flexibilitet i värdmiljön. Använd jämförelsetabellen för värdplaner för att fastställa det bästa valet för dina behov.

  • Azure Functions värdplaner

    Varje Azure Functions projekt distribuerar och körs i sin egen Functions-app, vilket är skalningsenheten och kostnaden. De tre värdplaner som är tillgängliga för Azure Functions är Förbrukningsplan, Premium-plan och Dedikerad (App Service) plan. Värdplanen bestämmer skalningsbeteende, tillgängliga resurser och stöd för avancerade funktioner som anslutning till virtuella nätverk.

  • Azure Kubernetes Service (AKS)

    Kubernetes-baserade funktioner tillhandahåller Functions Runtime i en Docker-container med händelsedriven skalning via Kubernetes-baserad keda (Event Driven Autoscaling).

Mer information om värdplaner finns i:

Förstå skalning

Serverlösa förbruknings- och Premium-värdplaner skalas automatiskt, vilket lägger till och tar bort Azure Functions värdinstanser baserat på antalet inkommande händelser. Skalning kan variera på flera dimensioner och bete sig annorlunda baserat på plan-, utlösar- och kodspråk.

Mer information om skalning finns i:

Förstå och åtgärda kallstarter

Om antalet värdinstanser skalas ned till noll har nästa begäran den extra svarstiden för att starta om funktionsappen, som kallas kallstart. Kallstart är en stor diskussionspunkt för serverlösa arkitekturer och en tvetydighetspunkt för Azure Functions.

Premium-värdplanen förhindrar kallstarter genom att hålla vissa instanser varma. Att minska beroenden och använda asynkrona åtgärder i Functions-appen minimerar också effekten av kalla starter. Tillgänglighetskrav kan dock kräva att appen körs i en dedikerad värdplan med Always on aktiverat. Den dedikerade planen använder dedikerade virtuella datorer , så det är inte serverlöst.

Mer information om kallstart finns i Förstå serverlös kallstart.

Identifiera lagringsöverväganden

Varje Azure Functions app förlitar sig på Azure Storage för åtgärder som att hantera utlösare och loggningsfunktionskörningar. När du skapar en Functions-app måste du skapa eller länka till ett allmänt Azure Storage-konto som stöder blob-, kö- och tabelllagring. Mer information finns i Lagringsöverväganden för Azure Functions.

Identifiera nätverksdesignöverväganden

Med nätverksalternativ kan Functions-appen begränsa åtkomsten eller komma åt resurser utan att använda internetroutningsbara adresser. Värdplanerna erbjuder olika nivåer av nätverksisolering. Välj det alternativ som bäst uppfyller kraven för nätverksisolering. Mer information finns i Azure Functions nätverksalternativ.

Produktion

Om du vill förbereda programmet för produktion kontrollerar du att du enkelt kan distribuera om värdplanen och tillämpa utskalningsregler.

Automatisera etablering av värdplaner

Med infrastruktur som kod kan du automatisera infrastrukturetablering. Automatisk etablering ger mer återhämtning vid katastrofer och mer flexibilitet för att snabbt distribuera om infrastrukturen efter behov.

Mer information om automatisk etablering finns i:

Konfigurera utskalningsalternativ

Autoskalning ger rätt mängd resurser som körs för att hantera programbelastningen. Autoskalning lägger till resurser för att hantera ökad belastning och sparar pengar genom att ta bort resurser som är inaktiva.

Mer information om alternativ för autoskalning finns i:

Optimering

När programmet är i produktion kontrollerar du att:

  • Värdplanen kan skalas för att uppfylla programkraven.
  • Det finns en plan för affärskontinuitet, tillgänglighet och haveriberedskap.
  • Du kan övervaka värd- och programhälsa och få aviseringar.

Implementera tillgänglighetskrav

Azure Functions köras i en viss region. För att få högre tillgänglighet kan du distribuera samma Functions-app till flera regioner. I flera regioner kan Functions köras i tillgänglighetsmönstret aktiv-aktiv eller aktiv-passiv .

Mer information om Azure Functions tillgänglighet och haveriberedskap finns i:

Övervakning av loggning, programövervakning och aviseringar

Application Insights och loggar i Azure Monitor samlar automatiskt in logg-, prestanda- och feldata och identifierar prestandaavvikelser. Azure Monitor innehåller kraftfulla analysverktyg som hjälper dig att diagnostisera problem och förstå funktionsanvändning. Application Insights hjälper dig att kontinuerligt förbättra prestanda och användbarhet.

Mer information om övervakning och analys av Azure Functions prestanda finns i:

Nästa steg