SQL Server 2005 中的本机 XML Web 服务

SQL Server 2005 中的本机 XML Web 服务

本主题将 Microsoft SQL Server 2005 中的本机 XML Web 服务与 Microsoft SQLXML 进行比较,说明本机 XML Web 服务如何工作,并列出了使用它的一些优点。

对于下列情况,本机 XML Web 服务没有用处,建议不要使用它:

·                          以实时高并发访问为特征且具有持续时间较短的事务的应用程序。

·                          Web 场类型扩展。

·                          作为中间层的替代品,具体而言,就是当应用程序体系结构中的大规模业务逻辑需求能够在中间层组件中得到更好的满足时。

将本机 XML Web 服务与 SQLXML 进行比较

SQL Server 的早期版本中,需要使用表格格式数据流 (TDS) 访问 SQL Server 数据库。对于基于 Windows 的桌面客户端来说,TDS 是必须支持的一项专有协议。有时,SQL Server 客户端必须使用 Microsoft 数据访问组件 (MDAC)MDAC 堆栈安装在连接到 SQL Server 的客户机上。对于 SQL ServerSQLXML 3.0 是支持基于 Web SQL Server 访问的中间层组件,但还必须使用 Internet 信息服务 (IIS)

SQL Server 2005 中,通过结合使用 HTTP SOAP,本机 XML Web 服务提供了非 Windows 环境的替代选择,如下图所示。

由于客户端不再需要安装 MDACSQLXML 也不需要在中间层上依赖于 IIS,因此 SOAP HTTP 访问使更大范围的客户端能够访问 SQL Server。这些客户端包括使用现有客户端应用程序的 Web 应用程序客户端,例如 Web 浏览器。本机 XML Web 服务使得使用 Microsoft .NET FrameworkMicrosoft SOAP 工具包、Perl 和其他 Web 开发操作系统以及工具集更加容易。

下表显示了每项技术提供的一些功能。

本机 XML Web 服务

Microsoft SQLXML

·                          可支持 SOAP 1.1 SOAP 1.2 客户端的完全兼容的 SOAP 服务器实现。

·                          完全支持参数化批处理执行。

·                          服务器上的动态 WSDL 生成。

·                          XML 模板和架构文件。它们支持可更新的 XML 视图。

·                          Updategram

·                          XML 大容量加载。

本机 XML Web 服务如何工作

若要使用 SQL Server 中的本机 XML Web 服务,必须在服务器上建立 HTTP 端点。此端点实质上是基于 HTTP 的客户端可以通过其查询服务器的网关。建立 HTTP 端点后,可以添加存储过程或用户定义函数,或者使其可用于端点用户。创建或更新端点后可以执行此操作。启用过程和函数后,它们将被指定为“Web 方法。设计为一起使用的 Web 方法的集合可以称为“Web 服务

可以使用 WSDL 格式来描述这些 Web 服务。WSDL 格式由 SQL Server 实例生成,并返回到启用了 WSDL 的任何 HTTP 端点的 SOAP 客户端,如下图所示。如果需要,WSDL 格式可以是自定义解决方案,而不是 SQL Server 生成的解决方案。还可以将端点配置为不应答 WSDL 请求。

按照此过程,可以实现启用 SQL Server Web 服务的集合,并将其用于帮助建立和填充面向服务的体系结构 (SOA)。有关详细信息,请在位于此 Microsoft 网站 MSDN Online Library 中搜索关键字“SOA”

使用本机 XML Web 服务的好处

可作为自身的 XML Web 服务运行的 SQL Server 实例提供下列好处:

·                          任何 Web 服务应用程序都可以访问 SQL Server 的实例

这是主要好处。因为本机 XML Web 服务基于大家熟知的技术(例如 XML HTTP),所以可以分析 XML 并提交 HTTP 请求的任何设备现在都可以访问 SQL Server。这允许在异类环境中对 SQL Server 进行更好的访问(在异类环境中,在非 Windows 操作系统上运行的应用程序可能需要连接到 SQL Server)。在这些情况下,一直以来,使用 Java 数据库连接 (JDBC) 或开放式数据库连接 (ODBC) 驱动程序是唯一可用的解决方案。SQL Server 中的本机 XML Web 服务提供了另一个低成本的替代方案。例如,如果数据库管理员要使用用 Perl 编写的、在非 Windows 操作系统上运行的脚本管理 SQL Server 资源,此功能可能非常有用。

·                          改进与 Microsoft 以及第三方 Web 开发工具集的集成

使用本机 XML Web 服务,SQL 查询结果将以 XML 格式返回。通过使用预定义的架构,具有内置 SOAP/HTTP 支持的智能集成开发环境 (IDE)(例如 Microsoft Visual Studio 2005 JBuilder)可以利用本机 XML Web 服务来帮助生成代理代码,以便提取与 SQL Server 实例的通信。大多数情况下,IDE 都能生成并提供对象,供客户端应用程序用来进行基于 Web 的数据访问。

·                          更好地支持间歇或松散连接的移动客户端

使用本机 XML Web 服务还允许随时随地访问 SQL Server 实例。这使得开发用于移动设备或间歇连接设备的应用程序更加容易。在建立连接且服务器开始处理请求之后,可以使用现有机制来监视服务器,这些机制可用于使用 TDS SQL Server Net-Library 的基于传统网络的客户端。

·                          服务器内建立的安全措施可以减少实现其他防火墙的需要

SQL Server 2005
中的本机 XML Web 服务为 Web 访问提供内置级别的安全性。和一般的 Web 服务器不同,为供 SQL Server 使用而创建的 HTTP 端点不允许匿名用户访问。若要创建端点,首先需要具有服务器的系统级管理特权,并且端点只提供配置端点时公开的存储方法。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值