Claude Код 👁 34

Архитектура микросервисов: неверные границы

Промпт для Claude: проверить проектируемую архитектуру на связанность сервисов и распределённые транзакции, с честным ответом «здесь монолит уместнее».

Промпт Запустить →
Промокод — до 25% бонусами к первому пополнению в most-ai
Разбери архитектуру, которую я проектирую, и найди в ней слабые места.

Что за система: [СИСТЕМА: сервис бронирования переговорных в компании на 400 сотрудников — календарь, уведомления, интеграция с почтой]
Планируемые сервисы: [СЕРВИСЫ: booking, users, notifications, calendar-sync]
Стек и инфраструктура: [СТЕК: Go, PostgreSQL, RabbitMQ, Kubernetes на трёх нодах]
Команда: [КОМАНДА: три бэкендера, выделенного devops нет]
Нагрузка: [НАГРУЗКА: до 200 бронирований в день, пики утром]

Проверь по пунктам:

1. Границы сервисов: где разрез проведён по технической схожести, а не по бизнес-возможности. Назови сервисы, которые придётся менять всегда вместе, — это признак неверной границы.

2. Данные: у кого чем владение, где два сервиса пишут в одни и те же сущности, где понадобится распределённая транзакция. Для каждого такого места — как обойтись без неё.

3. Связь: что должно быть синхронным вызовом, что событием. Где отказ одного сервиса уронит остальные и как это развязать.

4. Цена решения для этой команды: сколько сервисов реально тянут три человека без devops, что придётся поднять дополнительно — трейсинг, логи, схемы, миграции, локальный запуск.

5. Главный вопрос: оправдано ли разделение при такой нагрузке. Если модульный монолит здесь честнее — скажи это прямо и назови, при каких условиях имеет смысл выделять первый сервис.

Не пересказывай общие принципы микросервисной архитектуры и не советуй «использовать паттерн Saga» без объяснения, что именно он даст в моём случае.
Запустить промпт →

Похожие промпты

Claude
Дизайн REST API по best practices — эндпоинты, статусы, версии
Claude
Описание инструмента ИИ-агента
Claude
База знаний для агента n8n
Claude
ИИ-агент для ревью кода: правила проверки
Claude
Системное сообщение агента n8n с MCP
Claude
Нода Code в n8n: обработать элементы
Claude
Техническое задание для разработчика по задаче — Claude
Claude
Запись из n8n в базу: транзакции и повторы

Пример результата

Отдавал реальный проект внутреннего сервиса бронирования. Пятый пункт отработал честнее всего: Claude прямо написал, что при 200 бронированиях в день и команде из трёх человек четыре сервиса — это плата за архитектуру, которой не нужен масштаб, и предложил модульный монолит с чёткими границами модулей. Именно этого ответа я и опасался, и он оказался верным. По границам: указал, что booking и calendar-sync будут меняться всегда вместе, потому что оба знают о структуре брони. Разрез действительно был проведён по технической схожести. Раздел про данные показал место с распределённой транзакцией, которое я не заметил: отмена брони должна одновременно снимать событие в календаре и слать уведомление. Предложенный обход через outbox-таблицу с последующей публикацией события выглядит рабочим. Слабое место разбора: оценка накладных расходов на инфраструктуру дана общими словами — «понадобится централизованное логирование и трейсинг», без прикидки, сколько это стоит времени. Для решения «делать или нет» цифры были бы полезнее. И ещё: совет по стеку не учёл, что RabbitMQ у нас уже есть под другую задачу — модель предложила его «добавить».

Полезные статьи

Промты для программиста: 43 промпта под задачи кода
Нейросеть для создания схем: 7 промптов и блок-схемы бесплатно
Промт для матрицы судьбы: два промпта и сверка расчёта

Все гайды →