Создание распределенных, масштабируемых систем является сложным — и, что еще более распространено благодаря растущему числу IoT и мобильных устройств. Проблема, которую я обычно вижу, это попытки разработчиков рассматривать распределенные системы как монолитные системы. В частности, разработчики, которые держатся за шаблоны, такие как ACID.