|
| 1 | +--- |
| 2 | +title: Сине-зеленое развертывание |
| 3 | +status: Completed |
| 4 | +category: concept |
| 5 | +tags: ["methodology", "application", ""] |
| 6 | +--- |
| 7 | + |
| 8 | +Сине-зеленое развертывание — стратегия обновления работающих компьютерных систем с минимальным временем простоя. |
| 9 | +Оператор использует два окружения: «синее» и «зеленое». |
| 10 | +Одно из них обслуживает production-трафик (в нем работает текущая версия, с которой взаимодействуют пользователи), а другое в это время обновляется. |
| 11 | +После успешного завершения тестирования «зеленого» окружения (с новой версией) |
| 12 | +production-трафик переключается на него (часто с помощью балансировщика нагрузки). |
| 13 | +Отметим, что в этой стратегии окружения обычно переключаются сразу со всеми [сервисами](/service/). |
| 14 | +Однако иногда этот термин используется по отношению к отдельным сервисам в системе. |
| 15 | +Чтобы избежать подобной двусмысленности, для отдельных компонентов предпочтительно |
| 16 | +использовать термин «развертывание с нулевым временем простоя» _(zero-downtime deployment)_. |
| 17 | + |
| 18 | +## Какую проблему решает |
| 19 | + |
| 20 | +Сине-зеленые развертывания позволяют свести к минимуму время простоя при обновлении программного обеспечения, |
| 21 | +разные версии которого несовместимы (т. е. когда приходится обновлять сразу все компоненты). |
| 22 | +Например, сине-зеленое развертывание отлично подойдет для интернет-магазина, состоящего из сайта и базы данных. |
| 23 | +Предположим, что базу даных необходимо обновить, однако ее новая версия несовместима со старой версией сайта, и наоборот. |
| 24 | +В этом случае необходимо сразу обновить и сайт, и базу данных. |
| 25 | +Если это делать на живой production-системе, клиенты заметят перебои в работе. |
| 26 | + |
| 27 | +## Как именно решает проблему |
| 28 | + |
| 29 | +Сине-зеленое развертывание — подходящая стратегия для ненативного облачного ПО, которое необходимо обновлять с минимальным временем простоя. |
| 30 | +Необходимость в этой стратегии обычно намекает на то, что программное обеспечение нуждается в перепроектировании, |
| 31 | +в результате которого его компоненты можно было бы обновлять по отдельности. |
0 commit comments