Публикация в Azure без остановки сайта
Я относительно новичок в этой области, хотя я был программистом в течение многих лет.
У моей компании есть веб-сайт в Azure. Я тот, кто выполняет действие "Опубликовать" после подтверждения того, что команда закончила разработку определенного модуля. Тем не менее, я должен закрывать сайт при каждой публикации (добавляя app_offline.htm при копировании dll, aspx и т. Д.).
Это кажется избыточным, верно? должен быть лучший способ сделать это.
Я думал об очевидных двух серверах, которые, пока я "общаюсь" друг с другом, берут весь трафик, а потом они синхронизируются, или я могу опубликовать второй.
Среда: VisualStudio2013, AzureWebSite, ASP.NET 4.0.
Пожалуйста, поделитесь своими мыслями, знаниями или просто с чего мне начать расследование?
Спасибо!
2 ответа
Добавьте второй слот развертывания. Опубликуйте в неактивном слоте, а затем поменяйте местами, когда будете готовы. После того, как вы переключите слоты, старый активный слот станет новым неактивным, так что вы можете просто промывать и повторять при необходимости каждый раз, когда вам нужно сделать публикацию.
Вот справочная информация: http://azure.microsoft.com/en-us/documentation/articles/web-sites-staged-publishing/
Два сервера за лазурным диспетчером трафика. Один сервер является рабочим, другой - "сервером следующей версии".
Просто обновите "сервер следующей версии" и проверьте его, чтобы убедиться, что все работает, и после проверки этого, поменяйте местами диспетчер трафика, чтобы передать весь трафик на этот сервер. Теперь старый сервер становится "сервером следующей версии".
Кстати, это также дает вам возможность вернуться к предыдущей версии, если ваша последняя версия была "не так хороша":-)