5 redenen om ook te kiezen voor Serverless cloud
Het in gebruik nemen van software wordt een stuk makkelijker met Serverless. Zorgen over infrastructuur en servers behoren dankzij Serverless tot de verleden tijd. Serverless en microservices zijn in combinatie met elkaar te gebruiken, maar in deze blog richten we ons volledig op de voordelen van serverless aan de hand van de 5 belangrijkste voordelen. Zodat jij na het lezen de meerwaarde van serverless voor jouw business in gaat zien.
Het verschil tussen Microservices en Serverless
Microservices, hiervoor al kort benoemd, lijkt op Serverless. Het valt op dat men door de vele overeenkomsten amper verschil ziet tussen deze opties. Maar het is wel degelijk anders. In een Serverless architectuur bestaat de software uit vele kleine onafhankelijke functies. Deze functies worden alleen gestart als ze écht nodig zijn. Microservices daarentegen knipt de software op in componenten die alle software functionaliteit van een (sub)domein omvatten. In de praktijk komt dat er op neer dat de microservice componenten de hele tijd paraat staan om werk uit te voeren (ook als er niets te doen is).
Serverless is een technologie waarbij de services voor het bouwen van je applicatie aangeboden worden door een cloud provider. De aangeboden services zijn services op het gebied van computing, storage, messaging en data streaming. Deze services zijn zo gemaakt dat ze goed met elkaar kunnen samenwerken. Meer weten over wat Serverless precies is? Lees dan mijn vorige blog.
5 redenen om te kiezen voor Serverless cloud:
- Zelf geen infrastructuur onderhouden
Door een applicatie te ontwikkelen op serverless services van een cloud provider ben je zelf niet meer verantwoordelijk voor het onderhouden van de infrastructuur. Bij het opstarten van een project hoeft er ook niet meer gezorgd te worden voor de infrastructuur. Deze is er immers al, namelijk op de cloud provider. Tijd kan nu gestoken worden in het ontwikkelen van de applicatie. Tijdens het ontwikkelen van de functies kunnen deze lokaal uitgevoerd worden, ze kunnen communiceren met andere services in de cloud. Hierdoor kan de ontwikkelaar zijn code makkelijk en snel testen en eventuele fouten in de code opsporen. - Kostenverlaging
Draait je applicatie ‘s nachts maar wordt er weinig tot geen gebruik van gemaakt? In een eigen datacenter heb je voldoende server capaciteit nodig om het drukste moment aan te kunnen. Dit betekent dat je het grootste deel van de tijd veel meer capaciteit tot je beschikking hebt dan je daadwerkelijk nodig heb. En dat kost geld. Met serverless betaal je voor wat je gebruikt. Je hoeft op voorhand geen capaciteit te reserveren en de totale kosten worden vastgesteld op basis van hoe vaak en hoe lang de serverless functies uitgevoerd worden. Dit betekent dus dat je helemaal geen kosten hebt op het moment dat de software (bijvoorbeeld ‘s nachts) een periode niet gebruikt wordt. - Geen downtime bij het updaten
Een nieuwe versie van een applicatie live zetten kan zorgen voor een kleine periode waarin de applicatie niet bereikbaar is. Dit is funest als het gebeurt op het moment dat de applicatie gebruikt wordt. Met serverless worden de oude componenten pas afgesloten zodra de nieuwe componenten klaar zijn om te starten. Je kan dus op ieder moment een update van je applicatie live zetten, zonder dat er een downtime is. - Automatisch opschalen
Serverless technologie is gemaakt om schaalbaar te zijn, bij pieken in aanroepen kunnen er veel functies naast elkaar worden gedraaid. Het mooiste hiervan? Het gaat helemaal vanzelf. Nadat de piek voorbij is en een specifieke functie niet meer gebruikt wordt, zal het automatisch worden gestopt. Hiermee is er dus altijd precies voldoende capaciteit beschikbaar om de vraag aan te kunnen, zonder dat er iemand is die ernaar om moet kijken. - “Groene” softwareoplossing
Veel bedrijven hebben eigen datacenters of servers in gebruik die altijd aan staan. Hierdoor wordt er veel energie verbruikt als de servers niet of beperkt gebruikt worden. Als de serverless infrastructuur niet meer gebruikt wordt komt deze beschikbaar voor andere gebruikers die dat wel nodig hebben. Dankzij deze ontwikkeling is er minder infrastructuur nodig voor iedereen. Je kunt dit vergelijken met de autodeeldienst greenwheels. Als je een auto nodig hebt, pak je ‘m en rijd je ermee rond. Zit je rit erop, dan parkeer jij je auto en kan iemand anders deze gebruiken.
Serverless architectuur
Nu de cloud steeds meer de standaard aan het worden is, is het ook logisch dat steeds meer organisaties gebruik gaan maken van serverless. Daarbij wordt het vaak toegepast in combinatie met de bestaande microservice architectuur.
Als ontwikkelaar is het grootste voordeel dat je je niet druk hoeft te maken over de infrastructuur. Je kan een vliegende start maken omdat je je code snel op de cloud kan zetten. Dit levert dus meer productiviteit op. Daarnaast is de automatische schaalbaarheid fijn, want hierdoor draaien er precies zoveel serverless functies als nodig is.
Bij ilionx overwegen we altijd uitermate goed welke architectuur het beste past bij de klantvraag. We kijken per casus of een microservice architectuur of juist een serverless architectuur beter past bij het gewenste resultaat. Omdat microservices en serverless goed samen gaan, is het ook mogelijk om beiden te combineren, in de praktijk zien we dat dit vaak gebeurt. Zie je kansen omtrent Serverless voor je eigen business of wil je meer weten over dit onderwerp? Neem contact op en ontdek wat wij voor je kunnen betekenen.
Dit artikel is geschreven door Victor Wendel – Software Engineer bij ilionx