TwelveFactorAppMethodology - aleksei-khitev/knowledge_base GitHub Wiki
Фактор | Прием | Комментарий |
---|---|---|
Кодовая база | Использование одной кодовой базы, отслеживаемой в системе контроля версий при множестве развертываний |
Приложение не должно требовать перекомпиляции или пересборки для различных сред |
Зависимости | Явное объявление и изолирование зависимостей | И все зависимости должны быть доступны репозитории |
Конфигурация | Сохранение конфигурации в среде | Код приложения нужно полность отделить от конфигурации. Конфиграция должна определяться средой через переменные среды, чтобы можно было менять настройки без развертывания конфигов |
Вспомогательные сервисы | Отношение к вспомогательным сервисам, как к подключенным ресурсам | |
Сборка, выпуск, применение | Четкое разделение стадий сборки и применения | |
Процессы | Выполенния приложения в виде одно или несколькх процессов без использования состояния | |
Привязска портов | Экспорт сервисов через привязку портов | |
Многопоточное выполнение | Горизонтальное масштабирование с помощью модели процесса | |
Утилизируемость | Максимальная надежность за счет быстрого запуска и корректного завершения работы | |
Функциональная совместимость разработки и практического применения | Максимально возможная схожесть разработки, доводки и практического применения | |
Введение регистрационных записей | Отношение к регистрационным записям, как к потокам событий | |
Процессы администрирования | Запуск задач администрирования и управления в виде разовых процессов |
Лонг Д., Кеннет Б., Java в облаке. Spring Boot, Sprint Cloud, Cloud Foundry. Стр.45-51