microservices

Microservices

Kleine losse applicaties binnen een systeem die samenwerken. Lijkt op een ideale architectuur. Deze applicaties worden ook wel microservices genoemd. Vrijwel iedere (grote) organisatie maakt gebruik van deze microservices. Vele bedrijfsprocessen kunnen verwerkt worden tot microservices.

Wat zijn microservices?

Een microservice is zoals de naam al aangeeft een kleine service. Een microservice kan en moet maar één functionaliteit bevatten. Een functionaliteit kan zijn bijvoorbeeld het verwerken van klantgegevens. Door de functionaliteit zo klein mogelijk te maken, kan de service beter onderhouden worden. Want als er een aanpassing moet plaatsvinden dan hoeft niet het gehele systeem te worden geüpdatet, maar alleen maar een klein deel van het totaal. Hierdoor kan er sneller en gemakkelijker worden ontwikkeld. Uiteindelijke hebben alle partijen hier een voordeel aan. 

Helaas zijn er nadelen aan het gebruik van microservices. Als er binnen een systeem veel microservices zijn gebouwd, dan zorgt dit ervoor dat het een zeer complex systeem wordt. Al deze microservices moeten ten slotte met elkaar kunnen communiceren en er moeten dus meerdere communicatielijnen worden opgezet om het allemaal soepel te kunnen laten verlopen.

Implementatie van Microservices

Hoe verhouden microservices tot de bedrijfsprocessen? Meestal is het doel van het verbeteren van het IT-landschap binnen een organisatie om kostenbesparing of verbetering van producten/diensten. Microservices kunnen op verschillende manieren worden geïmplementeerd. Er zijn daarvoor 4 mogelijkheden. 

Business capability

Hiermee worden de microservices gebouwd op basis van de businesscase. Bijvoorbeeld een service voor de klanten administratie, orderverwerking en de producten. 

Subdomain

Microservices kunnen ook opgedeeld worden aan de hand van subdomains. Waarmee iedere unieke bedrijfsproces in een microservice wordt verwerkt. 

Self-contained Service

Microservices in self-contained zijn applicaties die op synchrone wijze met elkaar samenwerken. Hierbij kan er maar 1 taak tegelijk worden uitgevoerd. Dit zorgt voor een betrouwbaar maar zeer trage architectuur.

Service per team

Hierbij wordt er gekeken naar hoe microservices binnen teams kunnen passen. Microservices worden hierbij aan een bepaald team of afdeling gekoppeld. Waardoor er maar 1 team verantwoordelijk is.

Waarom microservices?

De grootste kracht van microservices zit hem in de flexibiliteit. Doordat ze flexibel kan er snel en eenvoudig een nieuwe microservices worden gemaakt. De uitrol van zo’n microservice verloopt dan snel. Het testen kan kleinschalig. Dit kan voor een kostenbesparing zorgen binnen een bedrijf. 

Bij microservices die in containers zijn geplaats is het dupliceren van een functie eenvoudig uit te voeren. Het dupliceren wordt gedaan als de andere microservice uitvalt of alle aanvragen niet meer kan verwerken. Dan kan er een tweede, derde of meerdere tot leven worden geroepen en gaan ze samen bezig om het allemaal in goede banen te leiden. 

Met microservices kan er dus snel worden opgeschaald wanneer dat nodig is. Dat is nu juist de kracht van de microservices.