Monolit to jedna wdrażalna aplikacja ze wspólnym runtime i zwykle jedną bazą danych — łatwiejsza w budowie i debugowaniu, ale trudniejsza do niezależnego skalowania fragmentów. Mikroserwisy dzielą system na niezależnie wdrażalne usługi, które mogą skalować się i rozwijać osobno, ale dodają złożoność systemów rozproszonych i narzut operacyjny.