Wij kopen gebruikte IT-apparatuur!

De voordelen van serverloze computing en de beperkingen ervan

De voordelen van serverloze computing en de beperkingen ervan
Leestijd: 4 minuten

Elk voordeel van serverless waarover je leest – elastische schaalbaarheid, lagere kosten bij inactiviteit, snellere implementatie – vloeit voort uit dezelfde fundamentele keuze: je ruilt controle over de infrastructuur in voor ontwikkelingssnelheid. 

Om de juiste beslissing te nemen over serverloze computing, moet je eerst begrijpen wat het precies inhoudt. Van daaruit kun je de voordelen vergelijken die bij echte werklasten standhouden, en de nadelen die na de migratie aan het licht komen, als je eenmaal vastzit aan deze keuze.

Korte feiten: wat je moet weten over serverloze computing

  • Bij serverloze computing zorgt de cloudprovider voor de inrichting, schaalbaarheid en het onderhoud van de servers. De klant beheert de code zelf en betaalt alleen voor de uitvoeringstijd.
  • Er zijn drie hoofdcategorieën: Function-as-a-Service (FaaS), Backend-as-a-Service (BaaS) en beheerde, op containers gebaseerde serverloze platforms.
  • De belangrijkste voordelen zijn facturering op basis van gebruik, automatische schaalbaarheid en snellere implementatiecycli, aangezien ontwikkelaars functies implementeren in plaats van omgevingen in te richten.
  • De belangrijkste nadelen zijn de vertraging bij het opstarten, het moeilijker opsporen van fouten en de afhankelijkheid van één leverancier, omdat de logica van je applicatie nauw verweven raakt met de runtime van één bepaalde aanbieder.
  • Serverless computing is zeer geschikt voor variabele, gebeurtenisgestuurde workloads. Het is minder geschikt voor constante workloads met een hoge doorvoercapaciteit, omdat speciale rekenkracht is vaak goedkoper.

Wat is serverloze computing precies?

Serverless computing is een uitvoeringsmodel in de cloud waarbij een provider op verzoek rekenkracht toewijst, uw code uitvoert en die rekenkracht vervolgens weer vrijgeeft zodra de taak is voltooid.

Je schrijft functies of backend-logica. De provider bepaalt waar die code wordt uitgevoerd, hoeveel instanties er nodig zijn en wanneer deze moeten worden afgesloten.

De naam is in letterlijke zin misleidend. Fysieke en virtuele servers elk verzoek wordt nog steeds verwerkt. Wat je wel kwijt bent, is het inzicht in die verzoeken en je verantwoordelijkheid voor het beheer ervan.

Dit verschilt van Infrastructure-as-a-Service (IaaS), waarbij je virtuele machines rechtstreeks inricht en beheert, en van Platform-as-a-Service (PaaS), waarbij je een applicatie beheert op een infrastructuur die gedeeltelijk geabstraheerd is maar toch continu actief blijft. Serverless gaat nog een stap verder: er draait niets tenzij een verzoek of gebeurtenis dit activeert.

De 3 soorten serverloze computing

  1. Function-as-a-Service (FaaS): Dit is het model waar de meeste mensen aan denken als ze het over “serverless” hebben. Platforms zoals AWS Lambda, Google Cloud Functions, Cloudflare Workers en Azure Functions voeren afzonderlijke functies uit in reactie op triggers, zoals een HTTP-verzoek, het uploaden van een bestand of een bericht in de wachtrij, en brengen de kosten in rekening op basis van de uitvoeringstijd en het toegewezen geheugen.
  2. Backend-as-a-Service (BaaS): Deze versie omvat beheerde backend-componenten die je anders zelf zou moeten bouwen: authenticatie, databases, bestandsopslag en pushmeldingen. Je roept een API aan in plaats van die dienst zelf op te zetten en te onderhouden. Firebase en AWS Amplify bieden diensten in deze categorie aan.
  3. Serverloze containers: Met platforms zoals Azure Container Apps, AWS Fargate en Google Cloud Run kun je gecontaineriseerde applicaties implementeren zonder dat je het onderliggende cluster hoeft te beheren. Het combineert de flexibiliteit van containers bij het verpakken met het hands-off-model van serverless.


De meeste serverloze productiearchitecturen combineren deze drie: FaaS wordt gebruikt voor gebeurtenisgestuurde logica, BaaS voor algemene backend-services en containers voor alles wat een langere looptijd of een aangepaste omgeving vereist.

De 5 grootste voordelen van serverloze computing

Simpel gezegd zijn de voordelen lagere kosten en minder onderhoud, maar het loont de moeite om er wat dieper op in te gaan. 

  1. U hoeft niet langer te betalen voor ongebruikte capaciteit. In een traditioneel servermodel moet je rekening houden met piekbelasting en betaal je de klok rond voor die capaciteit, zelfs om 2 uur ’s nachts, wanneer het verkeer slechts een fractie van de piek bedraagt. Serverloze platforms brengen de kosten in rekening op basis van de daadwerkelijke uitvoering, vaak tot op de milliseconde nauwkeurig.
  2. Schaalbaarheid is niet langer louter een kwestie van capaciteitsplanning. Een serverloos platform start zoveel instanties van een functie op als de gelijktijdige vraag vereist, en sluit deze vervolgens weer af. Je hoeft geen verkeersprognoses te maken en daar vooraf capaciteit voor in te plannen. Je krijgt geen telefoontje buiten kantooruren omdat een lancering viraal is gegaan en je vaste serverpool het niet bij kon houden.
  3. De implementatiecycli worden korter. Aangezien er geen server is die moet worden ingericht, geüpdatet of geconfigureerd voordat de code wordt uitgerold, kunnen teams afzonderlijke functies onafhankelijk van elkaar uitrollen in plaats van een monolithisch systeem opnieuw te implementeren. Dit is een belangrijke reden waarom de acceptatie van serverless zo nauw samenhangt met die van microservices. De markt weerspiegelt dat tempo: de wereldwijde markt voor serverless computing bedroeg geschat in 2024 op $24,51 miljard en zal naar verwachting in 2030 $52,13 miljard bedragen.
  4. De operationele overheadkosten voor het infrastructuurteam dalen. Geen OS-patches, geen capaciteitsmonitoring, geen serverpark dat up-to-date moet worden gehouden. Dat betekent niet dat het operationele werk verdwijnt. In plaats daarvan verschuift de focus naar het monitoren van de prestaties van functies, het beheren van machtigingen en het beheersen van de kosten op functieniveau in plaats van op serverniveau.
  5. Werkbelastingen met onvoorspelbaar of piekerig verkeer worden goedkoper en veerkrachtiger. Stel je bijvoorbeeld eens een batchtaak voor die elke dag tien minuten draait, een API die tijdens een productlancering pieken vertoont, of een IoT-pijplijn die alleen in werking treedt wanneer een sensor wordt geactiveerd. Dit zijn schoolvoorbeelden waarbij de kostenvoordelen van serverless opwegen tegen die van een dedicated server die de rest van de tijd inactief is.

5 uitdagingen waar serverless geen oplossing voor biedt

Een serverloze aanpak is niet altijd de ideale oplossing. 

  1. Koude starts komen echt voor, en ze zullen niet helemaal verdwijnen. Wanneer een functie al een tijdje niet is uitgevoerd, moet het platform een nieuwe uitvoeringsomgeving initialiseren voordat je code wordt uitgevoerd, wat voor extra vertraging zorgt. Voor toepassingen waarbij vertraging een rol speelt, is dat een probleem.
  2. Het opsporen van fouten wordt moeilijker, niet makkelijker. Een monolithische applicatie valt op één plek uit die je direct kunt controleren. Een serverloze applicatie is een gedistribueerd systeem van onafhankelijk geactiveerde functies, wat betekent dat een storing zijn oorsprong kan vinden in een functie, een trigger, een wachtrij of de interactie tussen deze drie. Lokale testomgevingen bootsen het triggergedrag in de productieomgeving zelden exact na.
  3. Langdurige of stabiele workloads worden duurder, niet goedkoper. De prijsstelling voor serverless is geoptimaliseerd voor pieken en periodes van inactiviteit. Een workload die continu op hoog volume draait, kost in een serverless-model waarbij per uitvoering wordt betaald vaak meer dan op een gereserveerde, dedicated instance. Stem de workload af op het prijsmodel, en niet andersom.
  4. Afhankelijkheid van één leverancier. Functies worden geschreven op basis van de runtime, het triggermodel en het aanbod aan beheerde diensten van een specifieke provider. Het migreren van een serverloze architectuur tussen AWS, Google Cloud en Azure betekent doorgaans dat grote delen van de applicatie opnieuw moeten worden geschreven.
  5. De verantwoordelijkheid voor de beveiliging verdwijnt niet, maar verschuift. De provider zorgt voor de beveiliging van de onderliggende infrastructuur. Je blijft zelf verantwoordelijk voor machtigingen op functieniveau, het beheer van geheimen en de code zelf. Te ruim gedefinieerde IAM-rollen (Identity and Access Management) voor afzonderlijke functies behoren tot de meest voorkomende fouten in de configuratie van serverless-omgevingen die beveiligingsteams tijdens audits aantreffen.

De overstap naar een serverloze infrastructuur

Serverless computing is een specifieke vorm die geschikt is voor bepaalde soorten workloads: gebeurtenisgestuurd, met pieken, los gekoppeld en tolerant ten opzichte van een variatie van enkele honderden milliseconden bij een koude start.

Wat er bovendien gebeurt, telkens wanneer een organisatie op grote schaal overstapt op serverless, is dat er een voorraad fysieke servers, racks op locatie of gereserveerde cloudhardware ontstaat die de workload niet langer nodig heeft.

Het verplaatsen van workloads van een speciale infrastructuur naar een serverloos model is een van de meest voorkomende aanleidingen voor een hardwarevernieuwing of het volledig buiten gebruik stellen van een datacenter, en die hardware verdwijnt niet vanzelf op verantwoorde wijze, alleen maar omdat de workload naar de cloud is verplaatst.

Als een serverloze migratie die op uw routekaart staat ertoe leidt dat u racks, schijven of de volledige ruimte van een datacenter achter u laat, De diensten van exIT Technologies op het gebied van het buiten gebruik stellen van datacenters en het afstoten van IT-middelen het deel van de migratie afhandelen dat niet in het architectuurdiagram staat.

nl_NLDutch