⛰Сегодня поговорим о том, какие они бывают. Все окружения можно разделить на 4 условные группы, даже, если они будут называться как-то по другому, их назначение останется скорей всего одним из этих 4-х групп окружений.
Итак, бывают:
1️⃣ Лаб-окружения (лаб-энвайронмент). Они, в свою очередь могут делиться на:
- тестовые (для тестирования).
- девелоперские(для разработки).
2️⃣ Стейдж-окружения (предпрод).
Окружения наиболее близкие к настоящим, прод-окружениям, о которых будем говорить дальше. Они дорогие, максимально повторяют прод-окружения, и предназначены для тестирования выкаток (ролаутов) и откатов (ролбэков), а также для того, чтобы убедиться, что в прод-конфигурации без заглушек, с настоящими балансерами, сетью и, на самом деле ещё кучей других параметров, ваш код будет рабочий.
3️⃣ UAT-окружения (UAT - User Acceptance Testing).
Окружения, на которые допускают бизнес пользователей, заказчиков, протестировать полученный продукт или новый функционал.
4️⃣ Продакшен-окружения (прод окружения).
Это самое настоящее окружение, на котором работает софт, которым пользуются клиенты. Над поддержкой работоспособности таких окружений работают целые команды специалистов, конечно, если вы работаете в более менее большой компании. В компании поменьше они бывают поддерживаются и 1-2 людьми.
✅ Давайте суммируем. Вот мы начали разрабатывать продукт, сначала на локальном окружении ➡️ потом смогли выкатить его на лаб-окружения, как только протестировали и убедились, что продукт годный ➡️ выкатили его в стейдж, после успешного стейджа ➡️ выкатили его в UAT ➡️ после чего раскатали его на часть или весь продакшен.
P.S.: Если ваш продукт достаточно серьезен и важен, то ещё к этим 4-м прибавится Performance-окружение, предназначенное для нагрузочного тестирования. Как правило это отдельное окружение, так как сами понимаете, в любой момент ваш продукт может не выдержать нагрузки и упасть, тем самым заблокировав тестирование функциональности. А также, чтобы вы могли четко понимать что нагрузку подаёте только вы, и результаты были честными.