Как бы вы спроектировали онлайн-систему магазина примерно с тысячей товаров и частыми обновлениями наличия и цен? Какие компоненты выделили бы?

Для тысячи товаров начните с модульного backend и реляционной БД: каталог, цены, остатки, корзина и заказы. Микросервисы не нужны только из-за частых обновлений.

Короткий ответ

Что ответить на собеседовании

Для тысячи товаров начните с модульного backend и реляционной БД: каталог, цены, остатки, корзина и заказы. Микросервисы не нужны только из-за частых обновлений.

Подробный разбор

Ответ с пояснениями

Для тысячи товаров начните с модульного backend и реляционной БД: каталог, цены, остатки, корзина и заказы. Микросервисы не нужны только из-за частых обновлений.

Цены и наличие имеют источник истины в БД; кеш каталога допускает короткую задержку, но при оформлении цена проверяется, а остаток резервируется атомарно. Заказ сохраняет snapshot условий покупки. Для импорта цен, уведомлений и тяжёлых операций можно добавить очередь и outbox. Изображения размещают в объектном storage/CDN. Нужны идемпотентность создания заказа, срок резерва и обработка неопределённого результата оплаты. Поиск и отдельные сервисы вводят после появления измеренной потребности, сохраняя простую эксплуатацию.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее