microservices

zelfstandig naamwoord, meervoud

Microservices zijn kleine, afzonderlijk inzetbare softwarediensten die elk een afgebakende functie uitvoeren en samen één applicatie vormen.

De betaalfunctie en de productcatalogus draaien als afzonderlijke microservices.

Bij een microservicesarchitectuur bestaat een applicatie uit meerdere zelfstandige diensten. Elke dienst verzorgt een afgebakend onderdeel, zoals betalingen, voorraadbeheer of het versturen van meldingen. De diensten wisselen gegevens uit via bijvoorbeeld een Woordenboek · In het kortAPIEen API is een vastgelegde manier waarop software gegevens uitwisselt of functies van andere software aanroept, zonder de interne werking daarvan te hoeven kennen.Lees meer of berichtenstroom.

Hoe werken microservices samen?

Een microservice heeft doorgaans een eigen Woordenboek · In het kortcodebaseEen codebase is de verzameling broncode waaruit een softwareproduct of onderdeel wordt gebouwd en onderhouden.Lees meer en kan apart worden getest, uitgebracht en opgeschaald. Daardoor kan een team de betaalservice aanpassen zonder tegelijk de hele applicatie opnieuw uit te brengen. Hoe zelfstandig een dienst werkelijk is, hangt ook af van zijn afhankelijkheden. Als meerdere diensten bij elke wijziging samen moeten worden aangepast, zijn ze in de praktijk sterk aan elkaar gekoppeld.

Microservices draaien vaak in Woordenboek · In het kortcontainerEen container is een afgeschermd applicatieproces met de bestanden en instellingen die het nodig heeft. Containers op dezelfde machine delen doorgaans de kernel van het besturingssysteem.Lees meer en worden via een geautomatiseerd proces Woordenboek · In het kortdeploymentEen deployment is het proces waarmee een gekozen versie van software in een doelomgeving wordt geïnstalleerd en gestart, zodat die daar getest of gebruikt kan worden.Lees meer. Dat is geen voorwaarde: de architectuur gaat vooral over de verdeling van verantwoordelijkheden en de mogelijkheid om diensten onafhankelijk te beheren.

Verschil met een monoliet

In een monolithische applicatie worden onderdelen meestal als één geheel gebouwd en uitgerold. Dat kan overzichtelijk en efficiënt zijn, vooral voor een kleinere applicatie of een klein team. Met microservices kunnen teams onderdelen afzonderlijk ontwikkelen en schalen. De extra diensten en onderlinge verbindingen maken het systeem wel complexer.

Een storing kan bijvoorbeeld ontstaan in de communicatie tussen diensten. Ook Woordenboek · In het kortloggingLogging is het vastleggen van gebeurtenissen terwijl software draait. Deze loggegevens helpen ontwikkelaars om de werking van een systeem te volgen en problemen te onderzoeken.Lees meer, beveiliging en gegevensconsistentie moeten over meerdere processen worden geregeld. Daarom zijn microservices geen automatische verbetering: de aanpak past vooral wanneer afzonderlijke onderdelen echt een eigen ontwikkel- of schaaltempo hebben.