cloud
Словарь ↗Проверка готовности к эксплуатации
Проверка готовности к эксплуатации — это то, что сервис проходит, прежде чем ему разрешат нести реальный трафик, и она задаёт не тот вопрос, что ревью кода. Ревью кода спрашивает, верно ли это изменение. Готовность спрашивает, сможет ли кто-нибудь эксплуатировать эту штуку после запуска: видно ли, когда она ведёт себя плохо; есть ли у неё владелец; есть ли процедура на её известные отказы; деградирует ли она вместо обрушения, когда зависимость тормозит; можно ли восстановить её данные, если они потеряны. Делать это явно стоит потому, что все эти вопросы легко решаются в момент запуска и почти нерешаемы потом, когда сервис уже везёт клиентов, а написавшие его люди заняты другим. Чтобы выжить, проверка должна оставаться короткой. Работающая версия — это горстка вопросов, у каждого ответа на которые есть названный владелец, а не документ, который никто не дочитывает. Кого зовут, когда ломается. Что показывает панель и поймёт ли посторонний, читая её, здоров ли сервис. Каковы два-три ожидаемых способа отказа и что человек делает по каждому. От чего он зависит и что происходит с пользовательским запросом, когда каждая зависимость недоступна. Какова история восстановления его данных и когда её проверяли в последний раз. Режим отказа — это когда проверка становится воротами, а не разговором: очередь с ожиданием, которую держит команда, не строившая сервис и не способная о нём судить. Это учит всех либо планировать в обход, либо доказывать, что вот этот сервис на самом деле не рабочая среда. Если так происходит, проверка измеряет соответствие, а не готовность, и укоротить её — лучший ответ, чем требовать её строже. Те же вопросы стоит задать заново, когда сервис существенно меняется: готовность — это свойство системы в её нынешнем виде, а не сертификат, полученный на запуске. Сервис, обзаведшийся новой зависимостью, новым хранилищем или десятикратным трафиком, тихо перестал быть тем, что проверяли.
Похожие термины