Arkitekturdesign för serverlösa funktioner

Serverlös arkitektur utvecklar molnplattformar mot ren molnbaserad kod genom att abstrahera kod från den infrastruktur som den behöver köra. Azure Functions är ett serverlöst beräkningsalternativ som stöder funktioner, små kodstycken som gör enkla saker.

Fördelarna med att använda serverlösa arkitekturer med Functions-program är:

  • Azure-infrastrukturen tillhandahåller automatiskt alla uppdaterade servrar som program behöver för att fortsätta köras i stor skala.
  • Beräkningsresurser allokeras dynamiskt och autoskalning omedelbart för att uppfylla elastiska krav. Serverlös betyder inte "ingen server", utan "mindre server", eftersom servrar bara körs efter behov.
  • Mikrofakturering sparar kostnader genom att endast debitera för beräkningsresurserna och varaktigheten som koden använder för att köra.
  • Funktionsbindningar effektiviserar integreringen genom att ge deklarativ åtkomst till en mängd olika Azure- och tredjepartstjänster.

Funktioner är händelsedrivna. En extern händelse som en HTTP-webbbegäran, ett meddelande, ett schema eller en ändring av data utlöser funktionskoden . Ett Functions-program kodar inte utlösaren, utan bara svaret på utlösaren. Med ett lägre inträdeshinder kan utvecklare fokusera på affärslogik i stället för att skriva kod för att hantera infrastrukturproblem som meddelanden.

Azure Functions är en hanterad tjänst i Azure och Azure Stack. Öppen källkod Functions-körningen fungerar i många miljöer, inklusive Kubernetes, Azure IoT Edge, lokalt och andra moln.

Serverlösa funktioner och funktioner kräver nya sätt att tänka och nya metoder för att skapa program. De är inte rätt lösningar för alla problem. Exempel på serverlösa Functions-scenarier finns i Referensarkitekturer.

Implementeringssteg

En lyckad implementering av serverlös teknik med Azure Functions kräver följande åtgärder:

  • Bestäm och planera

    Arkitekter och tekniska beslutsfattare (TDM: er) utför programutvärdering, genomför eller deltar i tekniska workshops och utbildningar, kör konceptbevis (PoC) eller pilotprojekt och genomför arkitektoniska designsessioner efter behov.

  • Utveckla och distribuera appar

    Utvecklare implementerar serverlösa funktionsapputvecklingsmönster och -metoder, konfigurerar DevOps-pipelines och använder metodtips för platstillförlitlighetsteknik (SRE).

  • Hantera åtgärder

    IT-proffs identifierar värdkonfigurationer, framtidssäkrad skalbarhet genom att automatisera infrastrukturetablering och upprätthålla tillgängligheten genom att planera för affärskontinuitet och haveriberedskap.

  • Säkra appar

    Säkerhetspersonal hanterar Azure Functions säkerhetsinformation, skyddar värdinstallationen och ger vägledning om programsäkerhet.