К конвергентным стандартам веб-служб для ресурсов, событий и управления

 

15 марта 2006 г.

Версия 1.0

Авторы

Кевин Клайн (Kevin Cline), Intel
Джош Коэн (Josh Cohen), Майкрософт
Даг Дэвис, IBM
Дональд Ф. Фергюсон, IBM
Хизер Крегер, IBM
Рэймонд МакКоллум (Raymond McCollum), Майкрософт
Брайан Мюррей, HP
Ян Робинсон( Ян Робинсон), IBM
Джеффри Шлиммер (Jeffrey Schlimmer), Майкрософт
Джон Шевчук (John Shewchuk), Майкрософт
Виджай Тевари (Vijay Tewari), Intel
Уильям Vambenepe, HP

Введение

HP, IBM, Intel и Microsoft планируют разработать общий набор спецификаций для ресурсов, событий и управления, которые могут широко поддерживаться на нескольких платформах. Стороны будут делать это, опираясь на существующие спецификации и определив ряд улучшений, которые обеспечивают такую конвергенцию. Во многих сценариях поставщики и клиенты, создающие решения с помощью веб-служб, обнаруживают, что существующие спецификации поддерживают их сценарии. Поставщики и клиенты могут использовать новые спецификации и функции, когда требуются общие возможности.

Общие функциональные возможности, которые мы охватываем, включают:

  • Ресурсы: возможность создавать, читать, обновлять и удалять сведения с помощью веб-служб.
  • События. Возможность подключения веб-служб вместе с помощью управляемой событиями архитектуры на основе публикации и подписки.
  • Управление. Предоставляет модель веб-службы для создания решений по управлению системами и приложениями, уделяя особое внимание управлению ресурсами.

Кроме того, общая коллекция спецификаций для взаимодействия разработана таким образом, чтобы организации могли легко расширить спецификации для охвата дополнительных сложных сценариев.

Сегодня существует множество спецификаций, которые предоставляют возможности веб-службы для ресурсов, событий и управления. Ниже приведены некоторые примеры.

  • WS-Transfer;
  • WS-Enumeration
  • WS-Eventing;
  • WS-MetadataExchange
  • WS-ResourceFramework
    • WS-Resource
    • WS-ResourceProperties
    • WS-ResourceLifetime
    • WS-ServiceGroup
    • WS-BaseFaults
  • WS-Notification
    • WS-BaseNotification
    • WS-BrokeredNotification
    • WS-Topics
  • WS-Management
  • Распределенное управление веб-службами
    • Управление с помощью веб-служб (часть 1)
    • Управление с помощью веб-служб (часть 2)
    • Управление веб-службами

HP, IBM, Intel и Microsoft предоставили реализации многих из этих спецификаций в пакетах разработчиков и продуктах. Эти реализации предоставляют ценные отзывы для дальнейшего развития и уточнения. Взаимодействие с клиентами и пользователями также демонстрирует необходимость постепенного сходства этих спецификаций для предоставления единого определения общих основных функций. Многие спецификации уже являются стандартами, а другие недавно представлены. Достижение конвергенции упростит взаимодействие, разработку решений и процесс стандартизации нового общего набора спецификаций.

В этом документе представлен обзор конвергенции и мотивации. Сначала она разбивает проблему на два основных стандартных блока: (a) управление информацией и (б) события и уведомления. Затем в нем описывается, как эти блоки формируют составную основу для управления веб-службами. В каждом из этих трех разделов этот документ содержит очень краткий технический обзор соответствующих спецификаций и их связи с существующими спецификациями. Детали в этом документе представляют собой наше лучшее текущее мышление и могут развиваться до публикации спецификаций.

В соответствии с предыдущими усилиями по дорожной карте авторы ожидают, что спецификации будут опубликованы и уточнены в течение следующих 18-24 месяцев. Некоторые спецификации, определенные в этой стратегии, будут опубликованы уже в 2к06. Спецификации будут уточнены с помощью рабочего процесса WS-* с представлением в организацию по стандартам после этого процесса, когда будет обеспечено соответствующее качество.

В этом техническом документе описывается, что, по ожиданиям соавторов, будет техническая эволюция текущих спецификаций. Хотя цель заключается в том, что будущие версии продуктов будут поддерживать эти спецификации, информацию о конкретных результатах продукта можно получить у представителей соответствующих компаний.

Читатели должны ссылаться на фактические спецификации для получения технических сведений.

Управление данными

Общие сведения

HP, IBM, Intel и Microsoft создают две новые спецификации (WS-Transfer Addendum, WS-ResourceTransfer) и новую версию существующей спецификации (WS-MetadataExchange). Эти спецификации включают и составляются с WS-Transfer и WS-Enumeration, которые будут поддерживать HP, IBM, Intel и Microsoft.

WS-Transfer addendum (new) расширяет WS-Transfer (сентябрь 2004 г.), определяя необязательные сообщения Get', Put', и Create, которые пересматривают существующие сообщения Get, Put и Create. В сообщении WS-Transfer Delete нет изменений. Необязательные расширения Get', Put', и Create позволяют элементу текста сообщения указать подмножество ресурса или передать директивы обработки для конкретного ресурса. Диалект элемента body зависит от ресурса и определяется спецификациями, размещенными в WS-Transfer addendum. Очевидным примером диалекта является XPath. В этом примере, если ресурс представляет собой большой XML-документ, выражение XPath в get' выбирает подмножество этого документа. Аналогичным образом в тексте Put можно указать подмножество обновляемого документа. Сообщение GetResponse имеет аналогичные изменения.

WS-Transfer addendum расширяет ответы Put и Create, чтобы они могли включать ссылку на конечную точку WS-Addressing (EPR) для обновленного или нового ресурса. Как и сообщения запроса, текст всех трех ответных сообщений (GetResponse,PutResponse,CreateResponse') остается неопределенным, чтобы последующие спецификации расширений могли определять механизмы передачи для конкретных ресурсов, включая механизмы частичной передачи.

Все три обновленные операции имеют новые URI действий WS-Addressing. Использование новых URI обеспечивает обратную совместимость с WS-Transfer.

WS-Transfer addendum позволяет вносить изменения в WS-MetadataExchange, что обеспечивает лучшую интеграцию с WS-Transfer. Таким образом, IBM и Майкрософт переиздают WS-Metadata Exchange версии 1.1 (новая). По сути, метаданные ресурса или службы — это просто еще один ресурс, который извлекается с помощью Get.

Новый WS-MetadataExchange:

  • Изменяет сообщение Get на ссылку Get in WS-Transfer (сентябрь 2004 г.).
  • Определяет использование элемента mex:Metadata в epr. Это обеспечивает совместимый способ передачи метаданных для EPR.

Для обеспечения обратной совместимости элемент mex:Metadata сохраняется как привязка по умолчанию и пространство имен XML "https://schemas.xmlsoap.org/ws/2004/09/mex".

Основываясь на приведенных выше работах, HP, IBM, Intel и Microsoft совместно разрабатывают новую спецификацию, известную как WS-ResourceTransfer (WS-RT, new). WS-ResourceTransfer (WS-RT, new) ссылается на WS-Transfer (сентябрь 2004 г.), WS-Transfer addendum (new), WS-Enumeration (sep 2004) и WS-MetadataExchange версии 1.1 (новая). WS-ResourceTransfer добавляет некоторые из более сложных концепций из WS-ResourceFramework.

WS-RT (new) определяет элементы текста для Create', Get', и Put', которые поддерживают создание, получение и обновление частичных элементов ресурса. Существует множество причин для поддержки доступа к вложенным элементам состояния ресурса. Некоторые примеры:

  • Улучшенная производительность — состояние ресурса может быть очень большим, а запрашивающей стороне требуются только вложенные элементы.
  • Разрешение частичных обновлений устраняет ненужные побочные эффекты из-за обновления целых документов. Например, обновление всей записи каталога может сбросить таймер времени существования пароля, а простое обновление адреса электронной почты — нет.

WS-RT (новый) предопределяет два диалекта элементов тела: XPath и определение дочерних элементов по QName. Эти два подхода эквивалентны функциям, которые WS-ResourceProperties определены. При определении этих диалектов используется элемент body в WS-TransferAddendum бетоне. Конкретные диалекты также содержат поддержку передачи нескольких ссылок на подэлеп- ы для ресурса с помощью Get', Put' и Create. Опять же, несколько Put' и Get' повышают производительность, избегая получения или размещения всего документа и избегая нескольких сетевых вызовов для получения или размещения вложенных элементов.

Get' возвращает несколько подэлементов, а Create и Put передают несколько значений для инициализации и обновления соответственно. Опять же, эти функции эквивалентны возможностям, которые WS-ResourceProperties определены.

Кроме того, WS-RT (новый) определяет

  • Необязательное время существования ресурса. Время существования указывает, когда ресурс удаляется автоматически. Это поддерживает некоторые модели для ресурсов, например подписки на события.
  • Формат метаданных времени существования и связанный WS-MetadataExchange диалекте, который позволяет включать поддерживаемые модели времени существования в метаданные ресурса.
  • Семантика для обработки метаданных времени существования при включении в запрос создания.
  • Как epr ресурса может включать элемент mex:Metadata и внутри него epr для метаданных ресурса. Это позволяет извлекать и /или обновлять метаданные, как и любой другой элемент данных ресурса, включая поддержку частичного доступа.

Связь с существующими спецификациями

Рис. 1. Связь с существующими спецификациями

На рисунке 1 представлен обзор связи между новыми спецификациями. (Затеняные блоки представляют собой совместно согласованные спецификации.)

В WS-Transfer и перечислении WS нет изменений. WS-Transfer Addendum расширяет WS-Transfer и требует обратной совместимости. WS-ResourceTransfer слоев и состоит из WS-Transfer addendum, определяющих конкретный синтаксис и семантику для универсальных выражений в базовых спецификациях. WS-ResourceTransfer предоставляет сопоставления для многих возможностей WS-ResourceFramework. К ним относятся поддержка доступа и обновления частичных элементов ресурса, интеграция метаданных с моделью состояния ресурсов и моделью времени существования ресурсов. Другие функции WS-ResourceFramework будут основываться на спецификациях, указанных ниже, и других возможных спецификациях.

HP, IBM, Intel и Microsoft намерены поддерживать спецификации WS-Transfer, WS-Enumeration, WS-TransferAddendum, WS-MetadataExchange и WS-ResourceTransfer в будущих продуктах.

IBM и другие продолжат поддерживать WS-ResourceFramework. IBM и партнеры будут работать в органах по стандартам, чтобы перефразировать WS-ResourceFramework для четкого разграничения расширений за пределами WS-ResourceTransfer. Программисты могут использовать эти расширения, если им нужны эти функции.

Корпорация Майкрософт и другие будут продолжать поддерживать WS-Transfer, WS-Enumeration.

Программисты могут начать с WS-Transfer, WS-Transfer Addendum, WS-Enumeration, WS-MetadataExchange. Корпорация Майкрософт и партнеры, поддерживающие эти спецификации, будут продолжать предоставлять эту поддержку в дальнейшем. Программисты могут использовать существующие реализации и версии WS-ResourceFramework. IBM и партнеры, поддерживающие эту спецификацию, обеспечат совместимость с новыми спецификациями.

События и уведомления

Общие сведения

HP, IBM, Intel и Microsoft определяют спецификацию, которая интегрирует функции из WS-Notification с WS-Eventing. Новая спецификация WS-EventNotification содержит и состоит из WS-Eventing. WS-EventNotification представлено пять возможностей, поддерживаемых WS-Notification. Эти особые значения приведены ниже.

  1. Политика подписки— WS-Eventing и WS-Notification вводите концепцию подписки на ресурсы или службы для событий. Разные службы и ресурсы могут иметь разные подходы к реализации подписок и уведомлений. Подписчики могут захотеть установить другие требования или директивы для подписок. WS-EventNotification определяет конкретные политики, которые позволяют ресурсу или службе описывать свои подходы к подпискам и управлению подписками, а также позволяет подписчику указывать директивы для источника событий. Это обеспечивает расширяемость для WS-EventNotification и описания возможностей, которые могут использоваться другими спецификациями.
  2. Расширенные языки фильтрации. WS-Eventing появился простой язык фильтрации. Язык позволяет подписчику указать фильтр, описывающий события, которые подписчик хочет получать. WS-EventNotification представлен более широкий язык фильтрации, который позволяет использовать функции, которые WS-Notification поддерживаются.
  3. Уведомление в оболочке — WS-Eventing описывает события как выходные операции или сообщения в типе порта WSDL. Выходные сообщения соответствуют входным сообщениям или операциям в приемнике событий. В некоторых сценариях, особенно на основе существующих систем публикации и подписки, требуется явное уведомление, содержащее данные о событиях. Это уведомление "упаковано". Выходное сообщение или операция для события содержатся во внешней операции уведомления или сообщении. Уведомление в оболочке также предоставляет универсальный интерфейс для получения уведомлений. Это позволяет определить подписчиков, которые могут получать события от любого оповещающего. Нет необходимости в операции, которая соответствует выходной операции из эмитатора событий.
  4. Ресурсы подписки. WS-EventNotification, например WS-Notification, рассматривает состояние подписки как ресурс в WS-ResourceTransfer. Подписка может иметь время существования, и подписчик может использовать Get', Put', и Delete' для чтения или обновления состояния подписки, например для изменения срока действия фильтра или срока действия. Это лучше интегрирует концепции, определенные в WS-Eventing, с аналогичными понятиями в WS-ResourceTransfer и WS-ResourceFramework.
  5. Приостановка подписок. WS-EventNotification, например WS-Notification, вводит понятие приостановки подписки. Это позволяет временно остановить поток уведомлений для определенного подписчика. Точные свойства QoS, например, кэшируются ли новые уведомления или просто игнорируются, будут контролироваться политиками подписки.

Связь с существующими спецификациями

Рис. 2. Связь с существующими спецификациями

На рисунке 2 представлен обзор связи спецификаций событий и уведомлений. WS-EventNotification является надмножеством WS-Eventing и поддерживает обратную совместимость. Новая спецификация (WS-EventNotification) состоит из WS-ResourceTransfer для поддержки модели состояния и ресурсов для управления подписками. Существующие функциональные возможности WS-Notification явно не определены в WS-EventNotification по-прежнему могут быть наложены на его модель сообщений и функциональные возможности в качестве расширения.

Microsoft, IBM и другие будут продолжать поддерживать WS-Eventing,

HP, IBM, Intel и Microsoft намерены поддерживать новый WS-ResourceTransfer и WS-EventNotification спецификации в будущих продуктах.

IBM и другие будут продолжать поддерживать WS-Notification и планирует работать в стандартах, чтобы лучше интегрировать спецификации WS-Notification с WS-ResourceTransfer и WS-EventNotification. Программисты могут при необходимости использовать более сложные функции платформы WS-Notification. IBM и партнеры гарантируют, что реализации, использующие WS-Notification, будут работать в средах с WS-EventNotification и WS-ResourceTransfer.

Управление веб-службами

Общие сведения

Наконец, опираясь на совместную работу в области распространения информации и уведомления о событиях, HP, IBM, Intel и Майкрософт ведут разработку предстоящей спецификации общего управления веб-службами. Эта новая спецификация состоит из WS-ResourceTransfer (new) и WS-EventNotification (new). Многие различия между WS-Management и распределенным управлением веб-службами напрямую связаны с различиями между WS-Transfer и WS-ResourceFramework, а также между WS-Notification и WS-Eventing. Согласование этих спецификаций нижнего уровня обеспечивает конвергенцию спецификаций управления, которая выполняется.

На рисунке 3 представлен обзор новых спецификаций и их связи с существующими спецификациями. HP, IBM, Intel и Microsoft разрабатывают новую спецификацию, которая предоставляет единое определение основных функций управления.

Связь с существующими спецификациями

Рис. 3. Связь с существующими спецификациями (предлагаемые)

Сверка спецификаций управления ресурсами и событий и уведомлений позволяет выверять многие функции спецификаций управления. Некоторые примеры:

  • Управление состоянием управляемых ресурсов, включая вложенные элементы.
  • Уведомление о событиях управления и изменении состояния ресурса.

Новый набор спецификаций управления должен включать поддержку следующих функций для метаданных, включая сведения о типах ресурсов:

  • Начальная загрузка процесса обнаружения
  • Обнаружение уровней соответствия и возможностей служб и реализаций
  • Обнаружение и перечисление типов ресурсов и связанных метаданных
  • Доступ на чтение и запись к пространству типов и связанным метаданным
  • Навигация по связям через пространство типов и метаданных
  • Размещение доступного только для чтения типа и пространства метаданных, которое можно разместить за пределами службы (на веб-сайте) и адаптировать к фактической службе во время выполнения.
  • Начальная загрузка обнаружения и перечисления экземпляров и источников событий

Помимо функций, предоставляемых в WS-Transfer предоставления возможности создания и удаления ресурсов, а также WS-Resource передачи, обеспечивающей доступ на чтение и запись к экземплярам ресурсов, спецификации управления обеспечивают поддержку нескольких стандартизованных моделей данных, которые определяют:

  • Общие сведения о связях между экземплярами и их декодирование
  • Общий механизм различения экземпляров ресурсов
  • Базовый общий формат полезных данных для событий в целях взаимодействия, не ограничивающий использование форматов для конкретных платформ

Для взаимодействия между разнородными системами потребуется использовать одну или несколько стандартизованных моделей данных или событий. Некоторые из этих форматов могут быть определены совместными усилиями по мере необходимости.

Расширения этих спецификаций могут быть разработаны и по-прежнему существуют как для семейств спецификаций WS-Management, так и для семейств спецификаций WSDM. Однако объединение приведет к созданию большого общего ядра, которое может поддерживать мониторинг, управление состоянием и настройку ресурсов.

Существующая работа по текущим спецификациям будет продолжена до запланированного завершения. Эта стратегия предоставляет представление о следующем поколении спецификаций и стандартов, которые находятся в процессе. Для современных спецификаций будет определен путь миграции. Основываясь на существующих решениях, основанных на текущих спецификациях HP, IBM, Intel и Microsoft, будут развивать свои решения для включения этих спецификаций по мере их развития.

HP, IBM, Intel и Microsoft намерены внедрить новую стандартную спецификацию управления в будущих продуктах.

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

Корпорация Майкрософт и партнеры продолжат поддерживать WS-Management. Корпорация Майкрософт и партнеры, которые в настоящее время реализуют WS-Management, также обеспечат поддержку существующих реализаций на основе WS-Management.