# Что значит «готово к продакшну»: определение вместо ощущения

> Готово к продакшну — это не ощущение, а шесть проверяемых свойств: безопасность, сохранность данных, наблюдаемость, восстановление, скорость и поддержка.

Published: 2026-10-12 · Source: https://subxcat.com/ru/articles/production-ready · Author: SUBXCAT

«Готово к продакшну» значит, что приложение может работать с настоящими пользователями и их данными без постоянного присмотра автора: оно не отдаёт чужое, не теряет сохранённое, сообщает о своих поломках и переживает их. Это не про количество фич, а про то, что происходит, когда что-то идёт не так.

Проблема в том, что фраза обычно звучит как ощущение: «вроде всё работает». MVP, собранный на вайбкоде, почти всегда работает — на демо, у автора, с аккуратными данными. Ниже — шесть свойств, по которым «готово» можно проверить, а не почувствовать.

## Почему «работает» не равно «готово к продакшну»

Демо проверяет один сценарий: человек делает то, что задумано. Продакшн проверяет все остальные: пустые поля, двойные клики, медленный интернет, сотню пользователей одновременно, одного пользователя с плохими намерениями, падение внешнего сервиса в три часа ночи.

Готовность к продакшну — это ответ на вопрос «что будет, если…», а не «что будет, когда всё хорошо».

## 1. Безопасность

Приложение отдаёт каждому только его данные и не верит тому, что пришло из браузера.

Проверяемые признаки:

- доступ к данным проверяется на сервере, а не только скрытой кнопкой в интерфейсе;
- в клиентском коде нет секретных ключей;
- вход и сброс пароля защищены от перебора;
- зависимости не содержат известных уязвимостей.

## 2. Сохранность данных

Данные, которые доверили приложению, не пропадают и не портятся.

- есть автоматические бэкапы, и из них хотя бы раз реально восстанавливались;
- изменения схемы базы делаются миграциями, а не правками руками;
- повторная отправка формы или повторный вебхук не создают дубликатов.

## 3. Наблюдаемость

Ты узнаёшь о проблеме раньше пользователей и можешь понять, что случилось.

- ошибки собираются в одном месте и приходят уведомлением;
- в логах есть что-то, по чему можно найти конкретный запрос, но нет паролей и токенов;
- есть простая проверка «сайт жив», которая не зависит от твоего браузера.

## 4. Восстанавливаемость

Когда что-то всё-таки ломается, починить можно быстро и без героизма.

- неудачную версию можно откатить за минуты;
- развернуть приложение с нуля можно по записанной инструкции или скрипту, а не по памяти;
- есть понятный порядок действий на случай аварии и ясно, кто его выполняет.

## 5. Производительность

Приложение остаётся быстрым при реальной нагрузке, а не только на пустой базе.

- основные страницы открываются быстро на среднем телефоне и мобильном интернете;
- частые запросы к базе используют индексы;
- дорогие операции — ИИ, отправка писем, обработка файлов — ограничены по частоте и не блокируют интерфейс.

## 6. Поддерживаемость

Код может менять не только тот, кто его написал, — включая тебя через три месяца или ИИ-ассистента без контекста.

- проект запускается локально по инструкции из README;
- есть тесты хотя бы на то, что приносит деньги или хранит данные: вход, оплата, сохранение;
- нет пяти копий одной и той же логики в разных файлах;
- настройки вынесены в переменные окружения, а окружения разделены.

## Как применять это определение

Не нужно доводить каждое свойство до идеала перед запуском. Нужно знать, где ты находишься. Пройди шесть пунктов и для каждого ответь честно: «да», «частично» или «нет».

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

Полезно записать результат прямо в репозиторий — коротким списком в README. Через месяц будет видно, что сдвинулось, а не только ощущение, что «стало лучше».

## Коротко

- Готово к продакшну — значит, приложение выдерживает настоящих пользователей без постоянного присмотра автора.
- Готовность проверяется по шести свойствам: безопасность, сохранность данных, наблюдаемость, восстановление, производительность, поддерживаемость.
- У каждого свойства есть конкретные признаки, которые можно проверить за вечер.
- Безопасность и данные — до запуска, наблюдаемость и откат — до денег, остальное — по ходу.
- Записанная оценка полезнее ощущения «вроде всё работает».

Если хочется получить такую оценку со стороны, SUBXCAT проходит эти шесть пунктов на живом проекте и чинит то, что не дотягивает.
