Что такое распределенный монолит? Все просто. Монолит может быть хорошим, модульным, построенным с учетом модели предметной области, где модули максимально автономны (имеют слабую связанность), имеют одну цель и при этом имеют высокое сцепление. Возможно и обратное - тотальные зависимости всего от всего, именования сущностей как попало, любое мелкое изменение - как шрапнелью. С кучей соответствующих проблем. И в там и там в монолите вызовы - локальные. Если «распилить» монолит, то получим распиленный монолит, то есть по сути то же, что было, только с удаленными вызовами. В первом случае - неплохой набор потенциальных микросервисов (с поправкой на инфраструктуру). Во втором случае - полный фарш проблем. И вот именно этот случай в народе принято называть распределенным монолитом. Чтобы так не произошло - сначала строим модель предметной области, получаем стратегический дизайн и начинаем двигаться в его сторону постепенно перенося код из монолита в нужные места микросервисов в соответствии со стратегическим дизайном (например в DDD). Или не микросервисов, а модулей все в том же монолите, постепенно двигаясь к первому варианту монолита - хорошему и модульному =)
Что такое распределенный монолит? Все просто. Монолит может быть хорошим,…
Из этого канала
- #126Пути трех компаний к микросервисам
Пути трех компаний к микросервисам
- #127Для визуалов, выглядит это примерно так.
Для визуалов, выглядит это примерно так.
- #128А Саймон Браун (если не ошибаюсь, это его цитата) ведь прав. Сперва бы в…
А Саймон Браун (если не ошибаюсь, это его цитата) ведь прав. Сперва бы в монолите навести порядок, скилы прокачать, а там уж можно и в MSA.
- #123Видео обсуждения культурных и процессных особенностей, связанных с…
Видео обсуждения культурных и процессных особенностей, связанных с микросервисами https://www.youtube.com/watch?v=GBrxFWamoak
- #122Видео с мастер-класса Кирилла Ветчинкина по CDC тестам в микросервисной…
Видео с мастер-класса Кирилла Ветчинкина по CDC тестам в микросервисной архитектуре https://www.youtube.com/watch?v=dqPEeWJCshk