Обзор собственных веб-служб с поддержкой XML
В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется.
В этом подразделе проводится сравнение собственных веб-служб с поддержкой XML в сервере Microsoft SQL Server и Microsoft SQLXML, описывается, как работают собственные веб-службы с поддержкой XML, и приводятся некоторые преимущества использования этих служб.
Собственные веб-службы с поддержкой XML не дают никакого преимущества или не рекомендуются в следующих обстоятельствах:
Для работы с приложениями, характеризующимися высокой степенью параллельности доступа в реальном времени, с транзакциями малой длительности.
При горизонтальном масштабировании типа веб-фермы.
В качестве замены среднего уровня, особенно там, где архитектура приложения содержит широкомасштабные потребности бизнес-логики, которые лучше удовлетворяются в рамках компонентов среднего уровня.
Сравнение собственных веб-служб с поддержкой XML и SQLXML
В более ранних версиях SQL Server 2005 для доступа к базам данных SQL Server необходимо использование потока табличных данных (TDS). TDS является частным протоколом, который должен поддерживаться для клиентов для настольных ПК под управлением Windows. Иногда клиенты сервера SQL Server должны использовать компоненты доступа к данным Microsoft (компоненты MDAC). На компьютере клиента, подключенном к серверу SQL Server, устанавливается стек MDAC. Для сервера SQL Server SQLXML 3.0 является компонентом среднего уровня, поддерживающим веб-доступ к серверу SQL Server, но при этом должны также использоваться службы IIS.
Начиная с версии SQL Server 2005, собственные веб-службы с поддержкой XML в сочетании с протоколами SOAP и HTTP, предоставляют выбор среды, отличной от Windows, как показано на следующем рисунке.
Так как теперь больше не нужно, чтобы компоненты MDAC были установлены на клиенте или чтобы SQLXML, зависящий на среднем уровне от доступа к IIS, SOAP и HTTP, позволял более широкому диапазону клиентов осуществлять доступ к серверу SQL Server. К таким клиентам относятся клиенты веб-приложений, использующие уже существующие приложения, такие, как веб-обозреватель. Собственные веб-службы с поддержкой XML облегчают работу с Microsoft .NET Framework, набором средств Microsoft SOAP, со сценариями на языке Perl, а также с другими операционными системами и инструментальными наборами веб-разработки.
В следующей таблице представлены некоторые возможности, предлагаемые каждой из технологий.
Собственные веб-службы с поддержкой XML |
Microsoft SQLXML |
---|---|
|
|
Как работают собственные веб-службы с поддержкой XML
Для использования собственных веб-служб с поддержкой XML в SQL Server на сервере должна быть создана конечная точка HTTP. По существу, эта конечная точка является шлюзом, через который HTTP-клиенты могут выполнять запросы к серверу. После установки конечной точки HTTP хранимые процедуры или пользовательские функции могут быть добавлены или сделаны доступными пользователям. Это можно сделать при создании или обновлении конечной точки. После включения процедур и функций они указываются как веб-методы. Коллекция веб-методов, предназначенных для совместного использования, может называться веб-службой.
Такие веб-службы могут описываться при помощи формата WSDL. Формат WSDL формируется экземпляром сервера SQL Server и возвращается клиентам SOAP для любых конечных точек HTTP, в которых включен WSDL, как показано на следующей иллюстрации. При необходимости формат WSDL может быть пользовательским решением, вместо решения, формируемого сервером SQL Server. Кроме того, конечная точка может быть настроена на то, чтобы не отвечать на запросы WSDL.
Следуя этому процессу, коллекции включенных на сервере SQL Server веб-служб могут быть реализованы и использоваться для облегчения построения и распространения архитектуры, ориентированной на службы (SOA). Дополнительные сведения см. в результатах поиска по критерию «SOA» в библиотеке MSDN Online на веб-узле Microsoft.
Преимущества использования собственных веб-служб с поддержкой XML
Экземпляр SQL Server, который может работать как собственная веб-служба с поддержкой XML, предоставляет следующие преимущества:
Любое приложение веб-служб может иметь доступ к экземпляру SQL Server
Это является основным преимуществом. Так как собственные веб-службы с поддержкой XML основаны на широко известных технологиях, например XML и HTTP, любое устройство, которое может выполнять синтаксический анализ кода XML и выдавать запросы в HTTP, может теперь иметь доступ к серверу SQL Server. Это позволяет осуществлять более широкий доступ к SQL Server в гетерогенных средах, в которых приложениям, выполняющимся в операционных системах, отличных от Windows, может быть необходимо подключение к SQL Server. Традиционно, единственным решением в этих случаях было использование интерфейса Java для доступа к базам данных (JDBC) или драйверов открытого интерфейса доступа к базам данных (ODBC). Собственные веб-службы с поддержкой XML в SQL Server предоставляют иное, недорогое решение. Например, эта возможность может оказаться весьма полезна в тех случаях, когда для управления ресурсами SQL Server у администратора базы данных имеется сценарий, написанный на языке Perl и выполняющийся в операционных системах, отличных от Windows.
Улучшенные возможности интеграции, как со средствами Microsoft, так и с инструментальными наборами веб-разработок сторонних поставщиков
При использовании собственных веб-служб с поддержкой XML SQL-запросы возвращают результаты в формате XML. При использовании заранее определенных схем интеллектуальные интегрированные среды разработки (IDE), имеющие встроенную поддержку SOAP/HTTP, например Microsoft Visual Studio 2005 или JBuilder, могут пользоваться преимуществами собственных веб-служб с поддержкой XML при формировании промежуточного кода, обобщающего способы связи с экземпляром SQL Server. Чаще всего среда IDE формирует и предоставляет объекты, которые клиентские приложения могут, в свою очередь, использовать для веб-доступа к данным.
Улучшенная поддержка мобильных клиентов, имеющих прерывающуюся или плохую связь
Использование собственных веб-служб с поддержкой XML позволяет также выполнять доступ к экземпляру SQL Server в любом месте и в любое время. Благодаря этому облегчается разработка приложений для мобильных устройств или устройств с прерывающейся связью. После установления соединения и после того, как сервер начнет обработку запросов, сервер может контролироваться при помощи существующих механизмов, доступных обычным сетевым клиентам, использующим протокол TDS и сетевые библиотеки SQL Server.
Встроенные в сервер меры безопасности уменьшают необходимость в реализации дополнительных брандмауэров
Собственные веб-службы с поддержкой XML предоставляют встроенный уровень безопасности для веб-доступа. В отличие от обычного веб-сервера, конечные точки HTTP, созданные для использования сервером SQL Server, не допускают анонимного доступа пользователя. Для создания конечных точек на сервере необходимо вначале получить права доступа на уровне администратора системы, а сами конечные точки предоставляют только те хранящиеся методы, которые сделаны открытыми во время настройки.
См. также