Управление Web-сервисами в новой версии Windows Azure
Цель лекции: Ознакомление с организацией Web-сервисов и управлением ими в новой версии Windows Azure.
Презентацию к лекции вы можете скачать здесь.
Введение. Основные возможности
Как уже отмечалось, для создания Web-сервиса его необходимо прежде всего реализовать с использованием какого-либо инструмента, например, Visual Studio. Затем его необходимо подготовить к публикации в облаке (средствами Visual Studio) и, войдя на портал облака, осуществить рабочее развертывание сервиса в облаке. Далее, в облаке имеются возможности мониторинга сервиса, его настройки, визуализации информации о его масштабе
Для организации облачных web-сервисов в Azure реализован целый ряд новых компонент. Среди них - Traffic Manager (Управление трафиком), Connect (Соединения), CDN (Сеть кэширующих серверов). Они облегчают работу пользователям облака и дают дополнительные возможности управления сервисами. Интересно, что набор этих компонент постоянно расширяяется.
Компонента Windows Azure Соединения (Connect) предназначена для описания и обработки виртуальной сети. Позволяет настроить подключения между компьютерами в локальной сети и ролями (т.е. процессами), запущенными в Azure.
Компонента Traffic Manager (Диспетчер трафика) предназначена для управления пользовательским трафиком своих сервисов в Azure в различных центрах обработки данных и визуализации информации о них. Под трафиком в данном контексте понимается распределение загрузки между различными, удаленными друг от друга, центрами обработки данных (например, ЦОД Microsoft в Редмонде, штат Вашингтон, США, и в Дублине, Ирландия), на компьютерах которых могут выполняться облачные сервисы одного и того же пользователя.
Принципы балансировки нагрузки сервисов в некотором смысле аналогичны принципам распределения ресурсов в операционных системах (например, Round Robin – поровну, по очереди, "по кругу").
Реализация и публикация Web-сервиса в облаке с помощью Visual Studio
В предыдущей лекции мы создали средствами Azure Compute (облачного портала) "пустой" Web-сервис saf1. Рассмотрим теперь наиболее удобный способ реализации Web-сервиса – средствами Visual Studio. В примерах использована версия Visual Studio 2010.
Прежде всего, для получения необходимых полномочий необходимо запустить Visual Studio от имени администратора. Для этого вызываем контекстное меню значка Visual Studio на панели инструментов и в нем выбираем соответствующий пункт ( рис. 8.1).
Затем создаем проект, содержащий Web-сервис, реализованный на базе ASP.NET (т.е. шаблон Web-страницы). Соответствующий пример имеется в документации по Azure. Назовем проект WindowsAzureProject1. Web-страница сервиса содержит сообщение "Hello World from Professor Safonov’s course on Windows Azure", по которому можно определить, что это именно наш Web-сервис ( рис. 8.2):
Выполняем сборку и пробный запуск проекта способом, рекомендуемым Microsoft, - выбором пункта Debug / Start without debugging. Собранный Web-сервис запускается на локальной машине с помощью эмулятора облака для тестирования.
Для подготовки к публикации сервиса в облаке выбираем в solution explorer, для имени нашего проекта WindowsAzureProject1, в контекстном меню пункт Publish ( рис. 8.3):
Среда Visual Studio генерирует в поддиректории Publish два файла – файл описания сервиса и файл его конфигурации – и визуализирует в Windows Explorer ссылку на эту дисерторию на локальной машине ( рис. 8.4):
Рис. 8.4. Генерация конфигурационных файлов сервиса для его публикации и визуализация поддиректории Publish
Эту директорию необходимо запомнить для последующего развертывания сервиса в облаке средствами портала Windows Azure.
На рис. 8.5 изображен результат тестового запуска Web-сервиса на локальной машине (обратите внимание на IP-адрес – 127.0.0.1) с помощью эмулятора облака.
увеличить изображение
Рис. 8.5. Тестовый запуск Web-сервиса на локальной машине с помощью эмулятора облака