Microservices is een benadering van software-architectuur waarbij een applicatie niet als een enkel, groot geheel (monoliet) wordt gebouwd, maar als een verzameling kleine, onafhankelijke diensten. Elke microservice is verantwoordelijk voor een specifiek stukje functionaliteit en kan onafhankelijk worden ontwikkeld, getest en uitgerold.
Stel u een e-commerce platform voor. In een monolithische architectuur is alle functionaliteit (productcatalogus, winkelwagen, betalingen, gebruikersbeheer) onderdeel van een enkele applicatie. In een microservices-architectuur zijn dit vier aparte services die via API's met elkaar communiceren.
Het grote voordeel is flexibiliteit en schaalbaarheid. Als de betalingsservice zwaar belast wordt, kunt u alleen die service opschalen zonder de rest van de applicatie aan te raken. Als er een bug is in de productcatalogus, kan die service worden gefixt zonder risico voor de betalingsservice.
Microservices brengen ook complexiteit met zich mee: meer services betekent meer communicatie, meer monitoring en meer orchestratie. Voor kleinere applicaties is een monolithische architectuur vaak eenvoudiger en effectiever. Microservices zijn vooral waardevol bij grotere, complexere systemen waar schaalbaarheid en onafhankelijke deployment belangrijke vereisten zijn.