Gepubliceerd op

Wat is AWS Lambda? Serverloos rekenen voor applicaties

Auteurs

    Wat is AWS Lambda? Serverloos rekenen voor applicaties

    Backendcode uitvoeren betekent traditioneel servers inrichten, resources opschalen en de beschikbaarheid bewaken.
    Met AWS Lambda kun je code uitvoeren zonder infrastructuur te beheren en betaal je alleen voor wat je gebruikt.

    Wat is AWS Lambda?

    AWS Lambda is een serverloze rekendienst van Amazon Web Services.
    In plaats van applicaties op speciale servers te draaien, schrijf je functies die worden uitgevoerd als reactie op gebeurtenissen zoals:

    Je code draait in tijdelijke containers die volledig door AWS worden beheerd.
    Je levert alleen de functiecode en configuratie aan. Lambda doet de rest.

    Waarom AWS Lambda gebruiken?

    • Geen serverbeheer → Geen servers inrichten, patchen of opschalen.
    • Automatisch opschalen → Voert direct zoveel instanties uit als nodig is, van één verzoek tot duizenden per seconde.
    • Betalen naar gebruik → Alleen rekentijd (milliseconden) en verzoeken worden gefactureerd, geen inactieve tijd.
    • Ondersteuning voor meerdere talen / omgevingen → Node.js, Python, Java, Go, Ruby, .NET en aangepaste runtimes.
    • Eenvoudige integratie → Werkt naadloos samen met Amazon S3, Amazon DynamoDB, Amazon SNS, Amazon API Gateway en andere AWS-diensten.
    • Ingebouwde hoge beschikbaarheid → Draait in meerdere beschikbaarheidszones voor fouttolerantie.

    Veelvoorkomende toepassingen

    AWS Lambda versus traditionele servers

    • Traditionele servers → Vereisen inrichting, monitoring en opschaling voor piekbelasting met diensten zoals Amazon EC2.
    • AWS Lambda → Volledig beheerd, schaalt automatisch en brengt alleen uitvoeringstijd in rekening.

    Beperkingen en aandachtspunten

    • Koude starts → Functies die onlangs niet zijn aangeroepen, kunnen een korte vertraging ervaren (een “koude start”) wanneer AWS een nieuwe container opstart.
    • Time-outs → Elke aanroep heeft een maximale uitvoeringstijd (momenteel 15 minuten). Langdurige taken vereisen mogelijk een andere dienst zoals Amazon ECS of Amazon EC2.
    • Geheugen- en CPU-limieten → De geheugentoewijzing is beperkt tot enkele GB (momenteel 10 GB), met CPU-capaciteit evenredig aan het geheugen. Zware rekentaken kunnen deze limieten bereiken.
    • Tijdelijke opslag → De standaardopslag in /tmp is beperkt (standaard 512 MB, uitbreidbaar tot 10 GB), waardoor grote tijdelijke bestanden externe opslag vereisen zoals Amazon S3 of Amazon EFS.
    • Afhankelijkheid van de leverancier → Diepe integratie met AWS-diensten kan een migratie naar een andere cloudprovider bemoeilijken.
    • Netwerkbeperkingen → Toegang tot resources binnen een VPC maakt de configuratie complexer en kan de latentie van koude starts verhogen.
    • Complexere foutopsporing → Lokaal fouten opsporen en uitvoeringen traceren kan moeilijker zijn dan in een traditionele serveromgeving.

    Conclusie

    AWS Lambda stelt ontwikkelaars in staat gebeurtenisgestuurde applicaties te bouwen zonder servers te beheren.
    Of je nu een snelle backend voor een webapp, een realtime bestandsverwerker of een gegevenspijplijn nodig hebt, Lambda levert rekenkracht op aanvraag die automatisch opschaalt.