Помощь с настройкой «zero downtime»

Детали, на которые указывает @Stephen, действительно важны. Ведь нам нужно понимать, что такое нулевое время простоя. Например, я мог бы обойти требование «нулевого времени простоя» следующим образом:

Я определяю «нулевое время простоя» как никогда не отвечать пользователю кодом, отличным от HTTP 200, при корректном запросе (оставляя коды 300 и 400 доступными при необходимости). Затем я разворачиваю Discourse на droplet за 10 долларов в одноконтейнерном решении и добавляю Add an offline page to display when Discourse is rebuilding or starting up, чтобы избежать ошибок 500. Таким образом, я не показываю сайт, который был недоступен.

Считал бы я в здравом уме, что это «нулевое время простоя»? Никогда. Работает ли это так, как предложено? Конечно. И я мог бы пойти дальше и добавить резервный сервер в другом регионе, чтобы сделать это ещё более «устойчивым к нулевому времени простоя».

Вот почему важны уточнения и семантика. Это не одно и то же — всегда показывать что-то и всегда иметь функциональность на сайте.