Локальная отладка — облачная служба и Service Fabric в сравнении со службой приложений

Я изучил облачные решения Azure и задал следующий вопрос о локальной разработке веб-приложений.

Похоже, если вы разрабатываете облачную службу, вы можете запускать ее локально с помощью эмулятора Azure, если вы разрабатываете кластер Azure Fabric, вы можете запускать свой кластер локально.

Однако, если вы разрабатываете приложение Wep (часть службы приложений) и хотите отлаживать свое приложение локально, вы можете либо удаленно подключить отладчик к работающему веб-приложению, либо запустить веб-приложение на локальном сервере iis.

Проблема в том, что отладка на эмуляторе Azure или запуск в локальном кластере лучше иллюстрируют запуск приложения в облаке, чем разработка на локальном сервере iis.

Я что-то упустил, или в процессе разработки в службе приложений отсутствует возможность локального запуска в «облачной» среде (за исключением возможности удаленной отладки)?

Большое спасибо!


person Eli Katzav    schedule 17.05.2017    source источник


Ответы (1)


Для службы приложений не существует эмулятора, поскольку по своей сути это просто ферма IIS (по крайней мере, служба приложений Windows).

Мы запускаем приложения локально на IIS Express + SQL Server 2016 Developer edition, и это вполне соответствует. Конечно, если бы мы захотели, мы могли бы настроить ферму IIS локально и использовать ее, но я думаю, что в этом нет необходимости.

Вы можете немного приблизиться к реальной среде, если воспользуетесь предложением App Service Linux, так как там вы будете запускать все в контейнерах Docker. Таким образом, вы отлаживаете локальный Docker, а затем запускаете его в prod на Docker.

Я бы также порекомендовал вам проверить слоты развертывания в службе приложений, так как слот промежуточного развертывания может помочь вам найти проблемы, возникающие в облачной среде, до того, как вы переключите его в рабочую среду.

По моему личному опыту разработки приложений для службы приложений, проблемы в производственной среде были вызваны не тем, что среда сильно отличалась, а тем, что мы что-то упустили с базой данных, допустили ошибку в преобразовании Web.config и т. д.

person juunas    schedule 17.05.2017