Наша компания выпускает обновления нашего многофункционального клиентского приложения (написанного в основном для ASP.NET, служб WCF и ASP.NET AJAX) на веб-сервере IIS 7 нашего клиента Windows Server 2008.Время от времени у нас большие выпуски обновлений.И иногда есть ошибки, которые пользователи улавливают сразу после выпуска, которые не обнаруживаются ни во время тестирования автоматизации, ни на этапе тестирования.Есть ли способ плавно развернуть код ASP.NET в IIS 7, пока пользователи все еще включены, не нарушая свои рабочие процессы, содержащие код, который не был затронут?Я обнаружил, что если я просто скопирую код из рабочей области (без web.config) вручную и вставлю его в корневую корневую рабочую веб-папку, никто на самом деле не вылетит.Но мне интересно, есть ли какие-либо побочные эффекты в этой стратегии для пользователей, усердно работающих в приложении.Мне просто интересно, могут ли прерваться какие-либо другие соединения или как они вообще обрабатываются в этой ситуации (то есть: соединение SQL, вызовы службы WCF, сохраняют ли они тот же сеанс и будет ли это иметь какое-либо влияние и т. Д.)?Если бы я выбрал этот метод, у меня было бы что-то в web.config, которое показывало бы сообщение каждому пользователю (на главной странице) - например, баннер с надписью «Пожалуйста, выйдите из системы и очистите свой кэш», поэтомуони будут видеть обновления к решению проблем.Но это относится только к затронутым пользователям.
Если кто-то не считает, что это хорошая стратегия для небольших обновлений, и имеет лучшую стратегию, такую как изменение параметра web.config, который вынуждает пользователядругой сервер или что-то во время развертывания.Или какая-то другая методология, мои уши слушают.Очевидно, последний звучит безопаснее, но я просто не знаю, как это можно сделать.Я читал о серверах с балансировкой нагрузки, но я думаю, что этот тип настройки сервера делается для разных целей, например, если сервер выходит из строя, не так ли?Или это будет лучшим решением, когда вы отключите один сайт?Я приветствую любые идеи.