Новая версия Windows Azure AppFabric
Цель лекции: Ознакомление с новой версией (2013) Windows Azure AppFabric – основной компоненты Windows Azure для управления приложениями; с компонентами самой AppFabric и их возможностями для пользователей.
Презентацию к лекции вы можете скачать здесь.
Введение
Windows Azure AppFabric – основная компонента Azure, предназначенная для управления приложениями в "облаке". Слово fabric буквально означает "ткань". По классу ПО (см. лекцию 1) Azure Fabric относится к промежуточному ПО (middleware). Azure AppFabric предназначена для поддержки разработки, развертывания и обслуживания приложений в Azure Platform.
Windows Azure AppFabric предоставляет современную облачную платформу программного обеспечения промежуточного уровня для разработки, развертывания и управления приложениями на платформе Windows Azure. Кроме того, AppFabric обеспечивает высокую производительность программистов на уровне модели Platform-as-a-Service (PaaS) в среде Windows Azure. AppFabric обеспечивает связь существующих приложений разработчика с облаком и поддерживает их безопасную связь в сети, связывающей различные географически удаленные точки, и обеспечивает целостную модель разработки как для Windows Azure, так и для Windows Server.
Наконец, AppFabric обеспечивает более высокую продуктивность разработки, предоставляя более высокий уровень абстракции для разработки коммунникационных приложений и упрощает сопровождение приложения, выбирая оптимальные возможности используемой программно-аппаратной инфраструктуры.
В новой версии Azure (2013 г.), в пользовательском интерфейсе портала управления, сам термин AppFabric в явном виде не используется, однако все компоненты AppFabric сохранились, и к ним добавились новые.
Архитектура и компоненты Windows Azure AppFabric
Имеются три основных компоненты AppFabric (в новой версии на портале нет явного упоминания самого термина AppFabric) :
- Access Control (управление доступом) – в новой версии Azure осуществляется с помощью Azure Active Directory
- Service Bus (Шина сервисов) – шина для обмена сервисов сообщениями
- Cache (Кэш) – Кэширование данных (контента) для более быстрой их доставки клиентам облака с помощью CDN – Content Delivery Network. Данные хранятся в облачной памяти (Storage). Для привязки учетной записи памяти к CDN пока необходимо использовать старый портал.
Windows Azure AppFabric обеспечивает предварительно подготовленные, высокоуровневые сервисы ПО промежуточного уровня, которые повышают уровень абстракции и уменьшают сложность разработки облачных приложений. Эти сервисы открыты и носят многоязыковый характер, т.е. могут быть использованы из программы, написанной на другом языке (любом языке, реализованном в .NET; Java; JavaFX Script; Ruby, PHP и др.), и предоставляют разработчикам мощные библиотеки классов для разработки облачных приложений. Разработчики могут использовать каждый из этих двух сервисов отдельно или объединять сервисы в одно составное программное решение. Эти сервисы включают:
Шину сервисов (Service Bus). Обеспечивает безопасный обмен сообщениями и сетевые возможности, которые поддерживают построение распределенных и изолированных приложений в облаке, а также гибридных приложений, сочетающих в себе локальные и облачные приложения. Шина сервисов поддерживает использование большого набора протоколов и шаблонов кода для коммуникации и обмена сообщениями.
Управление доступом (Access Control). Access Control обеспечивает несложные методы определения идентичности и управления доступом для Web-приложений и сервисов, а также интеграции с общепринятыми поставщиками таких услуг - Active Directory®, Windows Live ID, Google, Yahoo! , Facebook.
Кэширование (Caching) – распределенный, находящийся в памяти, сервис для кэширования приложений Windows Azure и SQL Azure.
Интеграция (Integration). Сервис Integration обеспечивает интеграцию с BizTalk Server (конвейер, трансформации, адаптеры) на платформе Windows Azure, используя готовые к применению шаблоны интеграции для ускорения и упрощения разработки. Он также поддерживает высокоуровневые возможности для бизнес-пользователей, такие, как Business Activity Monitoring and Rules, а также "портал самообслуживания" для сообщества торговых партнеров и конвейеры business-to-business.
Пользовательский код (Custom Code). В дополнение к предварительно подготовленным сервисам промежуточного программного обеспечения, AppFabric также содержит все необходимо окружение для пользовательских кодов для .NET, например, web-сервисов, разработанных в среде Windows Communication Foundation (WCF), и рабочие планы, построенные с использованием Windows Workflow Foundation (WF). Поддерживает мощный и эластичный хостинг пользовательской бизнес-логики как части облачного приложения.
Шина сервисов
Нас рис. 5.1 представлена страница Web-интерфейса Windows Azure, с помощью которой можно управлять шиной сервисов. Сначала для работы с шиной сервисов создается пространство имен (namespace). В данном примере оно уже создано. Внизу – набор возможных действий.
Дальнейшие возможные действия с созданным пространством имен и шиной сервисов показаны на рис. 5.2. Переход от 5.1 к 5.2 осуществляется "кликом" на имени пространства имен (в примере – safonov). Это основной принцип нового пользовательского интерфейса Azure: для выполнения дальнейших действий с какой-либо сущностью необходимо кликнуть по ее имени. Система предлагает прежде всего скачать и инсталлировать необходимые программные инструменты, с помощью которых будут создаваться облачные сервисы, взаимодействующие через Service Bus. Наиболее подходящий вариант – создание WCF-сервисов с помощью Visual Studio 2012.
Интерфейс удобен и хорошо продуман. Однако необходимо учитывать следующие нюансы: несмотря на то, что использование Azure возможно из любой ОС и любого браузер, разработка приложения для Windows Azure возможна далеко не в любом окружении.. Наиболее оптимальный вариант – ноутбук с Windows 8, но и на него необходимо установить большой объем ПО – Visual Studio 2012 и большой набор специфических инструментов. Это требует времени – одного или нескольких дней. О рабработке речь пойдет позже, в последующих лекциях и лабораторных работах.
Для сравнения на рис. 5.3 приведен пользовательский интерфейс предыдущего (2011 г.) портала управления Windows Azure.
Как видно из рисунка, термины AppFabric, Access Control, Шина Службы и Кэш в старом интерфейсе присутствуют явно.