Serverless: de voor- en nadelen volgens specialisten

Serverless computing wint razendsnel aan, populariteit. Wat maakt de technologie zo interessant? En vooral: wat vinden gebruikers zelf van de staat van de technologie?

Serverless computing is, ter opfrissing, een dwaze term. Het begrip omvat de technologie waarbij het provisioneren van rekenkracht uit de handen van ontwikkelaars en IT-beheerders wordt genomen. Zij kunnen een applicatie ontwikkelen en die loslaten op cloudinfrastructuur zonder verder na te denken over de pk’s die de app nodig heeft. De provider zorgt ervoor dat de toepassing op een extreem elastische manier precies de rekenkracht krijgt toegediend die nodig is.

Zo betaal je exact voor wat een app verbruikt: vrijwel niets tijdens daluren, wat meer tijdens piekuren. Eén of meerdere servers blijven vanzelfsprekend van de partij, het verschil is dat je er zelf niet meer van hoeft wakker te liggen.

Weg met overprovisionering

Serverless is het geliefkoosde wapen tegen overprovisionering. We illustreerden eerder al in welke situaties de technologie interessant is aan de hand van enkele voorbeelden. Denk vooral aan toepassingen met een wispelturige workload, zoals een app die werknemers van een grote onderneming iedere ochtend opstarten maar doorheen de dag niet meer gebruiken. ’s Ochtends moet de applicatie snel werken en is er veel rekenkracht nodig maar daarna mag de toepassing in slaapmodus gaan. Om dat op een traditionele manier te bewerkstelligen, moet het IT-departement rekenkracht voorzien voor het piekverbruik. Dat kost onnodig veel geld. Serverless lost dat probleem op.

Serverless is het geliefkoosde wapen tegen overprovisionering.

Een actueel voorbeeld is de BigQuery-dienst van Google. Met BigQuery kan je inzichten halen uit enorme hoeveelheden ongestructureerde data, opgeslagen over cloudproviders heen. Stel je een vraag, dan moet BigQuery zo snel mogelijk door alle data ploegen en dat kost heel veel rekenkracht. Dankzij de serverless-implementatie van BigQuery wordt die rekenkracht gealloceerd op het moment dat de query draait. Ze verdwijnt opnieuw na afloop. Als klant hoef je niet na te denken over wat er op de achtergrond gebeurt en de rekening achteraf weerspiegelt enkel het verbruik.

Experts aan het woord

Reden genoeg dus om serverless te overwegen maar wat denken experts nu van de technologie? Jeremy Daly, consultant en zelfverklaarde serverless-enthousiasteling, deed de moeite om een bevraging uit te werken bij ontwikkelaars. De resultaten daarvan zijn vrij beschikbaar via Github.

Het onderzoek peilde naar het gebruik, de strategie en de bedenkingen bij 582 respondenten. Het gaat exclusief om mensen die de technologie al omarmden. Van die ontwikkelaars vindt 40 procent zich matuur. Zij zetten volledig in op serverless. Nogeens 22 procent bestempelde de maturiteit van henzelf en hun bedrijf als medium en geeft aan bezig te zijn met de overstap naar serverless. Om je een idee te geven van de prevalentie van serverless bij de ondervraagde: 191 van hen geeft aan dat meer dan 50 procent van de workloads in productie serverless draait, voor nogeens 52 ontwikkelaars is dat meer dan 40 procent.

Serverless is publiek

Het valt op dat serverless computing een affaire is voor de publieke cloud. 73 procent geeft aan dat er van serverless geen sprake is op de interne infrastructuur. Bij 5 procent is dat wel het geval.

Serverless computing is een affaire voor de publieke cloud.

De resultaten zijn logisch. Serverless komt maar tot zijn recht bij schaalbare workloads en om tegemoet te komen aan piekmomenten moet de achterliggende infrastructuur de nodige capaciteit bezitten. Doe je dat zelf, dan ben je alweer aan het overprovisioneren. De extra rekenkracht komt idealiter van een externe partij: de publieke cloud.

AWS Lambda koning

Van alle cloudproviders geniet AWS de voorkeur. 91 procent kiest voor de cloud van Amazon, voornamelijk met dank aan AWS Lambda. Azure Functions en Google Cloud Functions komen volgens deze bevraging op een verre tweede en derde plaats. De populariteit van Lambda komt niet als een verrassing. AWS debuteerde het Function-as-a-Service (FaaS)-aanbod immers al in 2014 en plukt de vruchten van die vroege investering. Dat AWS terzelfdertijd ook veruit de grootste cloudprovider ter wereld is, speelt natuurlijk ook een rol.

Wat was nu de motivatie van deze serverless-experts om hun workloads op de technologie te enten? Voor 28 procent van de bevraagden stond de mogelijkheid om een eventgebaseerde architectuur uit te bouwen centraal. Met een serverless-aanpak gebeurt er immers pas iets wanneer de situatie daarom vraagt. Voor 21 procent speelde de lagere ontwikkelingskost een grote rol, evenveel bevraagden schuiven de schaalbaarheid naar voren.

Pijnpunten

Het is niet allemaal rozengeur en manenschijn. De bevraging brengt enkele pijnpunten naar boven binnen het serverless-ecosysteem waar je maar beter rekening mee houdt wanneer je de stap overweegt. Het grootste punt van ergernis voor de bevraagden is het gebrek aan debugging-functionaliteit. Meer dan de helft noemt dat één van de twee belangrijkste problemen. Ook monitoringtools kunnen nog een stuk beter.

Lees ook: Serverless computing: wanneer is het slim en wanneer niet?

Ongeveer één op zeven ligt wakker van vendor lock-in. Dat is logisch gezien de prevalentie van FaaS. Wie AWS Lambda omarmt, verhuist niet zomaar naar Azure Functions. Je zal onvermijdelijk voor een stuk ontwikkelen gericht op de publieke provider die je omarmt. Dat gezegd zijnde is de lock-in niet overkomelijk. Serverless-functies zijn microservices die relatief vlot herwerkt kunnen worden. Ontwikkelaars met een gezonde argwaan voor een lock-in kunnen hun toepassingen zo bouwen dat een migratie geen onoverkomelijke hindernis is, moest het ooit zover komen. Naadloos wisselen tussen providers blijft vandaag wel uit den boze.

Evolutie

Serverless als concept werkt zich steeds meer naar de voorgrond en biedt een duidelijke meerwaarde voor specifieke workloads. De bevraging toont aan dat de gepercipieerde voordelen overeind blijven wanneer ontwikkelaars en organisaties de sprong maken.

Toch is er nog heel wat ruimte voor verbetering, met name wat monitoring en vendor lock-in betreft. We vermoeden dat FaaS de komende maanden en jaren alleen maar beter zal worden. Serverless computing is immers de essentie van de publieke cloud: een vrijwel grenzeloze flexibiliteit met een passend betaalmodel.