Architectuur van serverloze functies

Serverloze architectuur ontwikkelt cloudplatforms naar pure cloudeigen code door code te abstraheren van de infrastructuur die moet worden uitgevoerd. Azure Functions is een serverloze rekenoptie die ondersteuning biedt voor functies, kleine stukjes code die één ding doen.

Voordelen van het gebruik van serverloze architecturen met Functions-toepassingen zijn onder andere:

  • De Azure-infrastructuur biedt automatisch alle bijgewerkte servers die toepassingen nodig hebben om op schaal te kunnen blijven werken.
  • Rekenresources worden dynamisch en direct automatisch toegewezen om te voldoen aan elastische vereisten. Serverloos betekent niet 'geen server', maar 'minder server', omdat servers alleen worden uitgevoerd als dat nodig is.
  • Microfacturering bespaart kosten doordat er alleen kosten in rekening worden gebracht voor de rekenresources en de duur die de code gebruikt om uit te voeren.
  • Functiebindingen stroomlijnen de integratie door declaratieve toegang te bieden tot een breed scala aan Azure- en services van derden.

Functies zijn gebeurtenisgestuurd. Een externe gebeurtenis, zoals een HTTP-webaanvraag, bericht, planning of wijziging in gegevens , activeert de functiecode. Een Functions-toepassing codeert de trigger niet, alleen het antwoord op de trigger. Met een lagere toegangsdrempel kunnen ontwikkelaars zich richten op bedrijfslogica in plaats van code te schrijven voor het afhandelen van infrastructuurproblemen, zoals berichten.

Azure Functions is een beheerde service in Azure en Azure Stack. De open source Functions-runtime werkt in veel omgevingen, waaronder Kubernetes, Azure IoT Edge, on-premises en andere clouds.

Serverloos en Functions vereisen nieuwe manieren van denken en nieuwe benaderingen voor het bouwen van toepassingen. Ze zijn niet de juiste oplossingen voor elk probleem. Zie Referentiearchitecturen voor voorbeeldscenario's met serverloze functies.

Implementatiestappen

Voor een geslaagde implementatie van serverloze technologieën met Azure Functions zijn de volgende acties vereist:

  • Beslissen en plannen

    Architecten en technische besluitvormers (TDM's) voeren toepassingsevaluatie uit, voeren technische workshops en trainingen uit, voeren poC-projecten (proof of concept) of proefprojecten uit en voeren indien nodig sessies voor architectuurontwerpen uit.

  • Apps ontwikkelen en implementeren

    Ontwikkelaars implementeren patronen en procedures voor het ontwikkelen van serverloze Functions-apps, configureren DevOps-pijplijnen en maken gebruik van best practices voor Site Reliability Engineering (SRE).

  • Bewerkingen beheren

    IT-professionals identificeren hostingconfiguraties, toekomstbestendige schaalbaarheid door de inrichting van infrastructuur te automatiseren en de beschikbaarheid te behouden door bedrijfscontinuïteit en herstel na noodgevallen te plannen.

  • Beveiligde apps

    Beveiligingsprofessionals zorgen voor Azure Functions essentiële beveiligingstaken, beveiligen de hostingconfiguratie en bieden richtlijnen voor de beveiliging van toepassingen.