Microservice-architectuur, ook wel microservices genoemd, is een uitdrukking die in softwareontwerp wordt gebruikt om te verwijzen naar een enkele softwaretoepassing die is ontworpen als een suite van onafhankelijk inzetbare kleine services. De kleine applicatie kan bijvoorbeeld meerdere clients ondersteunen, API’s blootleggen en integreren met andere applicaties.
Microservices zijn in principe ontworpen om dan te ontvangen verzoeken verwerken en dienovereenkomstig te reageren, onafhankelijk van andere diensten. Na verloop van tijd kunnen de services evolueren om te voldoen aan veranderende zakelijke behoeften.
Gemeenschappelijke kenmerken van microservices
Momenteel is er geen formele definitie van microservice-architectuur, maar software die is gebouwd als microservices heeft wel degelijk gemeenschappelijke kenmerken en functies, waaronder services met meerdere componenten die onafhankelijk kunnen worden geïmplementeerd zonder de applicatie in gevaar te brengen. Microservices zijn over het algemeen ontworpen rond zakelijke mogelijkheden en prioriteiten.
Een ander belangrijk kenmerk van microservices is dat de services, hoewel bounded, zijn samengesteld uit losjes gekoppelde elementen. Hierdoor kunnen ontwikkelaars de services onafhankelijk bijwerken als de bedrijfsbehoeften veranderen. Als een service bijvoorbeeld wordt bijgewerkt en opnieuw geïmplementeerd, heeft dit geen invloed op andere services of moet andere services worden bijgewerkt.
Microservice-architectuur is vergelijkbaar met servicegerichte architectuur (SOA)
Microservice-architectuur wordt beschouwd als het tegenovergestelde van monolithische architectuur en vergelijkbaar met Service-Oriented Architecture (SOA). Het verschilt van SOA doordat SOA een breder raamwerk is, terwijl microservices verfijnder zijn.