Монолит 😕 база
Что такое монолитное приложение простыми словами?
Приложение, собранное и развёрнутое как единое целое: весь код живёт в одном процессе и одной сборке.
Монолит 😕 база
Приведи бытовую аналогию монолита.
Большой универмаг под одной крышей: всё в одном здании — удобно начать, но тяжело перестроить один отдел, не задев соседние.
Монолит 🤓 уверенно
Назови ключевые плюсы монолитной архитектуры.
Проще разрабатывать и деплоить на старте, единая кодовая база, нет накладных расходов на сетевое общение между частями.
Монолит 🤓 уверенно
Когда монолит — оправданный выбор?
На старте проекта, в небольшой команде, при невысокой нагрузке и неясных требованиях — когда скорость важнее масштабируемости.
Монолит 🧐 глубоко
Как монолитная архитектура усложняет масштабирование приложения?
Монолит 🧐 глубоко
Какие стратегии помогают постепенно дробить монолит на части?
Монолит 😎 про
Какие главные сложности возникают при миграции монолита на микросервисы?
Монолит 😎 про
Как организовать мониторинг производительности монолитного приложения?
Микросервисы 😕 база
Что такое микросервисная архитектура простыми словами?
Приложение разбито на множество мелких независимых сервисов; каждый отвечает за свою задачу, отдельно развёртывается и общается с другими по сети.
Микросервисы 😕 база
Приведи аналогию микросервисов.
Торговая улица из отдельных магазинов: каждый работает сам по себе, можно обновить один, не закрывая остальные.
Микросервисы 🤓 уверенно
Назови основные преимущества микросервисов.
Независимое развёртывание и масштабирование сервисов, изоляция отказов, свобода выбора технологий под каждую задачу.
Микросервисы 🤓 уверенно
Какие основные минусы у микросервисов?
Сложность распределённой системы: сеть, согласованность данных, развёртывание, отладка и мониторинг становятся труднее.
Микросервисы 🧐 глубоко
Как реализуется разделение ответственности между микросервисами?
Микросервисы 🧐 глубоко
Какие инструменты обычно применяют при построении микросервисной системы?
Микросервисы 😎 про
Как управлять транзакцией, охватывающей сразу несколько сервисов?
Микросервисы 😎 про
Как обеспечить надёжность и обработку ошибок в микросервисной системе?
CAP / PACELC 😕 база
Зачем нужна теорема CAP?
Она объясняет: в распределённой системе при сбое сети приходится выбирать между согласованностью данных и доступностью — всё сразу получить нельзя.
CAP / PACELC 😕 база
Расшифруй CAP простыми словами.
Consistency — все видят одинаковые данные; Availability — система всегда отвечает; Partition tolerance — продолжает работать при разрыве сети.
CAP / PACELC 🤓 уверенно
Какой пункт CAP нельзя совместить с двумя другими одновременно?
При сетевом разделении (P неизбежно) приходится жертвовать либо согласованностью (C), либо доступностью (A). Все три сразу недостижимы.
CAP / PACELC 🤓 уверенно
Чем PACELC дополняет CAP?
Добавляет: даже без сбоя сети (Else) есть выбор между задержкой (Latency) и согласованностью (Consistency).
CAP / PACELC 🧐 глубоко
Как сетевое разделение влияет на доступность и согласованность по CAP?
CAP / PACELC 🧐 глубоко
На какие два сценария делит выбор теорема PACELC?
CAP / PACELC 😎 про
В каких случаях оправдано предпочесть согласованность доступности и наоборот?
CAP / PACELC 😎 про
Как PACELC меняет подход к проектированию высокодоступных систем?
Распределённые транзакции 😕 база
Что такое распределённая транзакция простыми словами?
Операция, которая должна согласованно изменить данные сразу в нескольких сервисах или базах, как будто это одно целое.
Распределённые транзакции 😕 база
Почему распределённые транзакции — это сложно?
Нет общей базы и единого коммита: если один сервис упал после изменения другого, данные могут разойтись.
Распределённые транзакции 🤓 уверенно
Чем локальная транзакция отличается от распределённой?
Локальная идёт в одной БД и легко откатывается; распределённая охватывает несколько систем, где общего отката нет.
Распределённые транзакции 🤓 уверенно
Какие основные проблемы у распределённых транзакций?
Согласованность между сервисами, частичные сбои, блокировки ресурсов и общая надёжность.
Распределённые транзакции 🧐 глубоко
Что такое паттерн Saga и как он решает распределённые транзакции?
Распределённые транзакции 🧐 глубоко
Какие задачи решает протокол двухфазного коммита (2PC)?
Распределённые транзакции 😎 про
Какие недостатки у 2PC и чем его обычно заменяют?
Распределённые транзакции 😎 про
В чём идея eventual consistency для распределённых транзакций?