What is a “distributed monolith” and how do you avoid it? | LetsGit.IT