Microservices
Microservices is een architectuurpatroon waarbij een applicatie is opgebouwd uit kleine, onafhankelijke diensten die elk een specifieke functie uitvoeren en via API's met elkaar communiceren. Het tegenovergestelde is een monoliet — één grote applicatie.
Microservices vs. monoliet
| Monoliet | Microservices |
| Deployment | Geheel tegelijk | Per dienst onafhankelijk |
| Schaalbaarheid | Alles of niets | Per dienst schalen |
| Operationele complexiteit | Laag | Hoog |
| Foutgrenzen | Één fout kan alles raken | Fouten blijven geïsoleerd |
Voordelen
- Teams kunnen onafhankelijk aan diensten werken
- Elke dienst kan in een andere taal of framework worden geschreven
- Individuele diensten schalen op basis van vraag
Nadelen
- Netwerkcommunicatie tussen diensten voegt latency en faalopties toe
- Gedistribueerd debuggen is complexer
- Vereist goede orchestratie
Zie ook
- api — communicatie tussen microservices
- kubernetes — microservices orkestreren
- container — microservices draaien vaak in containers
- load-balancer — verkeer verdelen over instanties