← Все этапы маршрута

Сначала обычный процесс, потом контейнер · R6

R6. Жизненный цикл приложения

Цель

Развернуть сервис вручную и увидеть все его зависимости: runtime, config, proxy, database, migration и backup.

Что освоить

  • build и runtime dependencies
  • environment configuration
  • NGINX и systemd
  • SQL, transaction и migration basics
  • PostgreSQL backup / restore и rollback

Материалы основного пути

  1. NGINX: руководство для начинающих RU · Документация
    • Начать здесь. начало работы, static content, proxy и FastCGI concepts
  2. PostgreSQL: учебник RU · Документация
    • Обязательно. главы 1–4: SQL, joins, updates и transactions
  3. PostgreSQL: backup и restore RU · Документация
    • Практика. SQL dump, restore на чистой БД и проверочный query

Практика

Небольшое готовое приложение, PostgreSQL и NGINX на чистой VM с TLS.

Проверьте результат

Разворачиваете сервис с нуля, чините 502 и DB connection error, делаете backup, restore и rollback.

Вопросы, условия приёмки и доказательства

Ответьте и покажите

  • Почему migration и deploy нужно упорядочивать?
  • Как доказать, что backup пригоден?

Условия приёмки

  • Clean deploy по runbook
  • 502/DB error диагностируются
  • Restore проверен запросом и rollback выполнен

Учебный отказ: Отключить upstream либо выдать неверный DB config и восстановить service, не переустанавливая всю VM.

Артефакт: Deployment runbook + config + backup/restore/rollback transcript

Приложение развёрнуто на чистой VM; 502 и DB connection error диагностированы; восстановленная БД проверена запросом; rollback выполнен.

Хорошее доказательство: Runbook + configs + timed deploy/restore/rollback transcript с query result.

Недостаточно: Наличие dump-файла без restore или ручной deploy без зафиксированных dependencies/versions.

Углубление и справочные материалы

Темы для углубления

  • zero-downtime migration
  • connection pooling
  • PITR и совместимость версий

Провести backward-compatible migration и restore в отдельную БД, затем измерить и документировать downtime/RPO.

Результат: Rollback не теряет подтверждённые данные; restore проверен запросами; несовместимая migration блокируется до deploy.

Дополнительные материалы