This document compares traditional monolithic applications to microservices applications. Traditional applications have most functionality within a few processes separated by layers and libraries, while microservices segregate functionality into separate, independently deployable services. Traditional applications scale by cloning the entire app, while microservices can scale services individually. Microservices use a graph of interconnected services with distributed data ownership, while traditional apps typically use a single shared database.