@Rylov
ASP.NET, SharePoint developer

ASP.Net zero down time deployment, как лучше и дешевле?

Добрый день уважаемые коллеги, уже долгое время плохо сплю потому, что мучает одна проблема, суть её в следующем:

Есть ASP.Net MVC WEB API и IIS7 приложение которое обрабатывает запросы от пользователей.
Собственно проблема в том, что время от времени приходиться обновлять приложение, а в этот момент происходит очистка пула приложения и приложение становиться недоступно на 40-80с., соответственно все текущие задачи обрываются...

Собственно хотелось бы услышать советы бывалых разработчиков, администраторов, которым приходилось разрабатывать средние и крупные проекты.

Для себя я пока подумываю сделать два пула приложений на одной машине, а впереди перед сервером поднять Nginx в качестве reverse-proxy, в котором вручную управлять на какой из пулов ему нужно стучаться. В этом случае обновление решения просто происходит на соседнем пуле, а затем переключается активный пул в Nginx. В дальнейшем если нагрузка будет расти в теории можно разнести по разным серверам.

Однако может быть я изобретаю велосипед и есть решения намного проще и дешевле?
PS: Вопрос цены тоже имеет значение т.к. всё находится в облаке.
  • Вопрос задан
  • 2362 просмотра
Пригласить эксперта
Ответы на вопрос 1
SergeyRodyushkin
@SergeyRodyushkin
.NET Developer
Есть решение с использованием модуля Application Request Routing, описанное на serverfault, правда, лично я его не пробовал. Можно попробовать начать с этого, а если будет работать ненадежно или в случае роста нагрузки — тогда уже ставить nginx.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы