Microservices splitsen een applicatie in kleine, onafhankelijke services. Ze kunnen grote teams helpen schalen — maar voor de meeste projecten voegen ze complexiteit toe die meer kost dan ze oplevert. Weten wanneer je ze echt nodig hebt bespaart veel leed.
Wat ze zijn
In plaats van één applicatie (een «monoliet») is het systeem vele kleine services die over het netwerk praten, elk met één taak en apart uitrolbaar. Die onafhankelijkheid is het hele punt — en de hele kostenpost.
Wat ze oplossen — en kosten
- Lossen op: grote teams die werken zonder elkaar voor de voeten te lopen.
- Lossen op: één zwaar onderdeel onafhankelijk van de rest schalen.
- Kosten: netwerkaanroepen, gedistribueerd debuggen, uitrolcomplexiteit.
- Kosten: je beheert nu infrastructuur, niet alleen code.
Tekenen dat je ze misschien nodig hebt
Meerdere teams geblokkeerd door één codebase, een component die heel ander schalen vereist dan de rest, of systeemdelen met echt gescheiden levenscycli. Is niets daarvan waar, dan dient een schone monoliet je beter en goedkoper.