Разработка приложений для Windows Azure
10.7. Публикация приложения в облаке
Теперь, для того, чтобы облачное приложение можно было вызывать извне (через Web), по URL-адресу, который был бы автоматически присвоен приложению интегрированной средой VS 2010 и (или) средствами Windows Azure, - приложение должно быть опубликовано в облаке как общедоступный Web-сервис. Публикация информации о разработанном приложении производится в особых форматах, детали которых, однако, разработчику знать не требуется, так как файлы для представления пакета в облаке автоматически генерируются средой VS 2010. Разработчик должен помнить только имя своего проекта (решения – solution) Visual Studio и место его расположения на локальных дисках. Причем последнее подсказывает ему среда: после сборки проекта среда Visual Studio выводит на экран директорию, где она разместила пользовательский проект, и рекомендует пользователю (разработчику приложения) эту директорию запомнить. На рис. 10.7 представлен этап publish (публикация), на котором разработчик приложения выбирает и сообщает среде VS 2010 директорию, где находится его проект WindowsAzureProject3, и выбирает пункт контекстного меню Publish (опубликовать). Вот и все, что требуется от разработчика, чтобы выполнить сложнейшие действия по публикации разработанного им приложения в облаке! Не могу удержаться от комментария, что это уже похоже на магические действия волшебника, который запускает в небо новую планету. Или на запуск спутника или космического корабля. Поэтому подобные возможности доставляют ценителям программных архитектур и сред, включая автора, истинное наслаждение. Так запустите же Вашу звездочку на небо – разработайте свое облачное приложение и опубликуйте его в Azure!
10.8. Развертывание приложения в облаке
Следующий этап разработки – развертывание (deployment) приложения в облаке. В простейшем варианте, как в рассматриваемом примере, развертывание – это создание пакета специального формата, в который упаковывается информация о приложении. Данный случай рекомендуется выбирать путем выбора пункта Create Service Package Only в окне "Deploy Windows Azure Project" (рис. 10.8).
10.9. Поиск и указание директории, из которой происходит развертывание
При развертывании необходимо указать, из какой директории (расположенной на локальной машине) фактически происходит развертывание сервиса (рис. 10.9). Фактически развертывание означает, что теперь разработанное облачное приложение (как сервис) доступно в Web. Вот истинное воплощение принципа Software as a Service (SaaS)!
10.10. Отслеживание развернутого приложения в облаке с помощью Azure AppFabric
Работоспособность развернутого в облаке приложения можно проверить средствами Azure AppFabric, выбрав пункт Работоспособность развернутого приложения. Выдается информация о типе развертывания и состоянии развернутого приложения (рис. 10.10). Выдаются также важные для пользователя предупреждения, например, о том (как в данном примере), что на каждую роль имеется только по одному экземпляру приложения. Говорится также о том, что надежность сервиса – не стопроцентная, поэтому рекомендовано дублировать функции, т.е. иметь на каждое необходимое приложение как минимум по две роли. Напомним, что роль – это ¬процесс, в котором исполняется приложение. Не будем забывать о том, что это – серверный код, и число запросов к сервису может быть очень велико, т.е. возможны отказы. Чтобы уменьшить риск отказов, и рекомендуется иметь как минимум две роли на каждое (серверное) приложение.
увеличить изображение
Рис. 10.10. Отслеживание развернутого приложения в облаке с помощью Azure AppFabric
10.11. Удаление предыдущего развернутого приложения (при нехватке ресурсов)
Если не хватает ресурсов текущей подписки, приходится удалять второе развернутое приложение (в данном примере – приложение safonov-test2, рис. 10.11).
увеличить изображение
Рис. 10.11. Удаление предыдущего развернутого приложения (при нехватке ресурсов)
10.12. Повторное развертывание приложения в облаке
Затем при необходимости, после освобождения ресурсов, облачное приложение можно развернуть повторно (рис. 10.12).
10.13. Выбор области для развертывания
При (повторном) развертывании необходимо выбрать область (регион) – см. рис. 10.13.