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