Санкт-Петербургский государственный университет
Опубликован: 25.07.2014 | Доступ: свободный | Студентов: 1039 / 80 | Длительность: 17:26:00
Лекция 11:

Разработка облачных приложений для Microsoft Azure в VS 2013

13.3. Отладочный запуск Web-страницы на эмуляторе облака

После генерации всех файлов проекта выполним отладочный запуск созданной Web-страницы на эмуляторе облака, входящем в состав версии Visual Studio, расширенной инструментами Azure SDK.

Для этого выбираем в среде VS 2013 пункт меню Internet Explorer, в виде жирной зеленой стрелки, направленной вправо, появившийся в среде под пунктом меню Debug.

Среда выполняет сначала сборку (компиляцию) облачного проекта. Затем она запускает эмулятор облака, о чем информирует специальным сообщением.

На эмуляторе облака новая страница запускается под традиционным локальным URL-адресом http://127.0.0.1:2289, со специальным номером порта. Если среда VS 2013 была вызвана не от имени администратора, то для такого запуска не хватает полномочий.

13.4. Публикация сервиса в облаке

Для публикации сервиса в облаке рекомендую сначала создать "пустой" сервис в облаке Azure (см. курс [28]). Входим в облако со своей подпиской, логином и паролем и создаем в нем сервис под именем saf-service. Все детали описаны в [3].

Пустой сервис используем, чтобы опубликовать и развернуть в облаке созданную нами реализацию Web-страницы. Для этого на вкладке Solution Explorer входим в контекстное меню на имени роли WebRole1 и выбираем действие Publish (опубликовать в облаке).

Перед публикацией среда VS 2013 требует от нас войти в облако с соответствующими логином и паролем. После входа в облако среда получает информацию о том, что в нем под нашей учетной записью имеется пустой сервис saf-service, и предлагает опубликовать разработанную нами страницу в облаке именно по этому URL-адресу. Он будет иметь вид: http://saf-service.cloudapp.net, по нему мы впоследствии можем обратиться и визуализировать страницу через любой Web-браузер. Особо подчеркну, что новая версия среды VS 2013 является гораздо более удобной для публикации сервисов в облаке, чем предыдущая - VS 2010, с которой я достаточно много работал, в том числе и над созданием и публикацией облачных сервисов. В предыдущей версии среда требовала в явном виде указания конфигурационных файлов сервиса .csdef и .cscfg и запоминания директории, в которой они размещены на локальном компьютере. Теперь, в версии VS 2013, этого не требуется: среда сама "понимает", откуда взять конфигурационные файлы, что гораздо удобнее.

Публикация в облаке может занять продолжительное время, в зависимости от скорости Интернет-коннекции. В моем примере она заняла около получаса. При этом создается и поддерживается в актуальном состоянии специальная вкладка для вывода информации из облака, в том числе - информации о созданных и испольуемых учетных записях хранения (Azure Storage Accounts [28]) и т.д. Таким образом, в среде VS 2013 в процессе публикации в облаке создается как бы окно в "облачный мир", через которое пользователь имеет возможность получать необходимую информацию, связанную с публикацией сервиса.

Наконец, сервис опубликован и развернут в облаке, о чем среда выдает соответствующее сообщение.

Теперь можно либо войти в облако через его портал http://manage.windowsazure.com и убедиться, что наш сервис создан и развернут.

Также возможно, зная URL-адрес публикации, вызвать браузер и визуализировать новую страницу в нем. На рис. 13.8 изображен результат визуализации страницы в браузере Google Chrome (данный браузер взят просто для примера, чтобы убедиться, что и в нем все работает).

Результат визуализации страницы в браузере Google Chrome

увеличить изображение
Рис. 13.8. Результат визуализации страницы в браузере Google Chrome

Также после публикации сервиса в облаке среда VS 2013 генерирует и записывает в директории облачного проекта следующие конфигурационные XML-файлы:

  • saf-serviceProduction.azurePubxml - информация об опубликованном в облаке сервисе: имя сервиса в облаке (saf-service), метка его развертывания (WindowsAzure4 - имя облачного проекта в среде VS 2013), его опции и т.д.;
  • конфигурационные файлы содержат следующую информацию: ServiceDefinition.csdef - спецификацию интерфейса сервиса в стандарте WSDL; ServiceConfiguration.Cloud.cscfg и ServiceConfiguration.Local.cscfg - число экземпляров Web-роли (1).

13.5. Резюме

Среда VS 2013 предоставляет удобные возможности для разработки облачного сервиса Microsoft Azure, его публикации и развертывания в облаке. Предварительно, до создания облачного сервиса, требуется инсталляция инструментального комплекса Azure SDK. Сервис создается в виде Web-роли, т.е. облачного Web-приложения. При создании используется целый ряд шаблонов кода для разных вариантов создания сервиса, в том числе - шаблона одностраничного сервиса, который и использован в лекции. Рекомендуется до публикации сервиса в облаке предварительно войти в него и создать "пустой" сервис, что гарантирует выделение облачного URL-адреса. Затем сервис публикуется в облаке непосредственно из среды. В нужный момент среда запрашивает облачный логин и пароль и обеспечивает "окно в облако" на момент публикации в нем сервиса. В целом возможности среды VS 2013 по созданию облачных сервисов, даже в сравнении с предыдущими версиями среды, производят просто ошеломляющее впечатление своим удобством, логичностью и надежностью. Еще раз подчеркнем, какую замечательную работу выполнила корпорация Microsoft по развитию среды Visual Studio, что особенно проявляется именно в облачных проектах.

Ключевые термины

Azure SDK - инструментальный программный комплекс для поддержки разработки облачных сервисов в среде Visual Studio 2013; http://manage.windowsazure.com - портал Microsoft Azure.
ServiceDefinition.csdef.xml - конфигурационный файл определения облачного сервиса, после публикации в облаке преобразуемый в спецификацию WSDL-интерфейса.
ServiceConfiguration.Cloud.cscfg.xml - конфигурационный файл для развертывания сервиса в облаке; содержит число экземпляров Web-роли.
ServiceConfiguration.Local.cscfg.xml - конфигурационный файл для запуска сервиса на локальном компьютере на эмуляторе облака; содержит число экземпляров Web-роли.
VM-роль - виртуальная машина, развернутая в облаке Azure.
Web-роль - облачный сервис с Web-интерфейсом, развернутый в облаке Azure.
Worker-роль - фоновый вычислительный процесс, развернутый в облаке Azure.
Развертывание в облаке - запуск облачного Web-сервиса с целью его последующего использования.
Публикация в облаке - создание Web-сайта с URL-адресом специального вида в домене облака Azure с целью его последующего развертывания.

Краткие итоги

Среда VS 2013 предоставляет удобные возможности для разработки облачного сервиса Microsoft Azure, его публикации и развертывания в облаке. Предварительно, до создания облачного сервиса, требуется инсталляция инструментального комплекса Azure SDK. Сервис создается в виде Web-роли, т.е. облачного Web-приложения. При создании используется целый ряд шаблонов кода для разных вариантов создания сервиса, в том числе - шаблона одностраничного сервиса, который и использован в лекции. Рекомендуется до публикации сервиса в облаке предварительно войти в него и создать "пустой" сервис, что гарантирует выделение облачного URL-адреса. Затем сервис публикуется в облаке непосредственно из среды. В нужный момент среда запрашивает облачный логин и пароль и обеспечивает "окно в облако" на момент публикации в нем сервиса. В целом возможности среды VS 2013 по созданию облачных сервисов, даже в сравнении с предыдущими версиями среды, производят просто ошеломляющее впечатление своим удобством, логичностью и надежностью. Еще раз подчеркнем, какую замечательную работу выполнила корпорация Microsoft по развитию среды Visual Studio, что особенно проявляется именно в облачных проектах.

Набор для практики

Вопросы

  1. Что такое Azure SDK?
  2. Достаточно ли только инсталляции среды Visual Studio для создания облачных проектов, либо для этого требуются дополнительные инсталляции?
  3. Что такое Web-роль?
  4. Что такое Worker-роль?
  5. Что такое VM-роль?
  6. Что такое эмулятор облака?
  7. Что такое развертывание сервиса в облаке?
  8. Что такое публикация сервиса в облаке?
  9. Какой вид имеют URL-адреса облачных сервисов, публикуемых в облаке Azure?
  10. Достаточно ли обычных полномочий при запуске среды VS 2013 при создании и публикации облачных сервисов, либо необходимы специальные полномочия?
  11. Как запустить VS 2013 от имени администратора в ОС Windows 7? В ОС Windows 8?
  12. Опишите последовательность шагов при создании облачного сервиса.
  13. Опишите последовательность действий, которую среда VS 2013 выполняет при публикации сервиса в облаке.
  14. Каким образом может быть использован облачный Web-сервис?

Упражнения

  1. Выполните разработку облачного Web-сервиса по описанной в лекции схеме.
  2. Выполните публикацию сервиса в облаке.
  3. Проверьте работоспособность опубликованного в облаке сервиса в различных Web-браузерах.

Темы для курсовых работ, рефератов, эссе

  1. Обзор Azure SDK (реферат).
  2. Обзор возможностей среды VS 2013 по созданию и публикации Web-сервисов (реферат).
  3. Обзор концепции роли в облачной платформе Microsoft Azure (реферат).

Дополнительные материалы, презентации

Презентация к данной лекции: VS_2013_Course_13.pptx.

Александр Калинин
Александр Калинин

Осенью прошёл курс и получил ключ. Но т.к. уже имел действующую подписку, то ключом не воспользовался. Сейчас захожу сюда, а про DreamSpark вообще ни слова. Где же мой ключ?