Перейти к содержимому
9 / 10

Паритет локальной разработки и прода: что воспроизводить, а что нет

Полный паритет недостижим и не нужен: воспроизводить облачный балансировщик и три зоны доступности на ноутбуке — трата времени. Практическое правило: одинаковыми должны быть вещи, ошибки в которых обнаруживаются только на проде, а именно — версии зависимостей (та же версия СУБД, брокера, языка), схема данных и миграции, конфигурация через переменные окружения и способ сборки образа. Отличаться могут масштаб, отказоустойчивость, сеть и внешние управляемые сервисы: их заменяют лёгкими аналогами или заглушками. Основной инструмент — Compose с фиксированными версиями образов и seed-данными, поднимающийся одной командой. Отдельный слой — тесты против настоящих зависимостей через контейнеры в CI: они ловят то, что заглушки пропускают. И главное — паритет поддерживается автоматически: если локальная база отстаёт от прода на две мажорные версии, разработчик узнаёт об этом от пользователя.

Паритет локальной разработки и прода: что воспроизводить, а что нет | JScriptiser