У меня есть два веб-сервера в кластере, обслуживающих веб-приложение.
Использование MS Web Deploy для отправки новой версии приложения на один сервер, а затем снова для синхронизации файлов с другим сервером в кластере. Кажется, это самое обычное занятие.
Но не было бы проблемы, когда один сервер развернут с новой версией, а другой еще не закончен. Не вызовет ли это проблем, когда страница, загруженная с новой версией, отправляет запрос веб-службы, а балансировщик отправляет запрос на сервер со старой версией?
Какой лучший способ избежать этого?
Я подумал о том, чтобы написать сценарий для дренажной остановки сервера, на котором мы развертываем, и убедиться, что одновременно работает только один сервер. Но я не могу найти никого другого, кто, кажется, писал о таком решении. И думаю, что он тоже не очень хорошо масштабируется.
Другим решением может быть отключение всех серверов при обновлении. Но это не кажется очень умным.
Есть предложения?