SQL Server XML 和 Web 应用体系结构 ------ 没有图 :(-xml教程
转载自:互联网 作者:cd3c.com
您正在看的xml教程是:SQL Server XML 和 Web 应用体系结构 ------ 没有图 :(。
SQL Server XML 和 Web 应用体系结构
简介
Microsoft SQL Server 2000 以其众多的新功能闪亮登场,其中包括
我们称之为SQL Server XML的系列 XML新技术。此技术套件包含诸多改进、
增强和特性,使SQL Server成为更具 Web特点的应用程序,向 Microsoft
.NET版本迈进了一步。
SQL Server XML可用于扩展、增强或替换 Web应用的体系结构。新特
性可分为两个主要组件:
●数据库组件,允许数据库对 XML 进行读、处理和写操作。
●SQL Server XML Internet Server API (ISAPI) 应用,允许通过 HTTP
访问数据库。
无论是使用这两个组件还是使用其中的一个,都可以获得多个理想的
体系结构。为了测试新工具的功能和灵活性,我们检验了Duwamish Online
的逻辑体系结构,并将其应用到一组基于 SQL Server XML 的解决方案中。
为了使研究更全面,我们在测试中同时使用了比较简单的Duwamish Books,
Phase 4 应用和更可靠的 Duwamish Online应用。下面是所得出的体系结
构的概述。
逻辑体系结构
我们必须认识到不管应用是什么形式,下面两种体系结构始终存在:
逻辑体系结构,是用于分析应用的组织概念,而物理体系结构则表示实施
应用的途径。区分这两个概念是非常必要的,因为这两个体系结构很少完
全对应(即使有过这种情况)。下面您将看到,与给定的逻辑设计相对应
的物理体系结构会根据不同的情况而改变。
创建 Duwamish Online及其以前版本时,我们根据 Microsoft n- 层
准则确定逻辑体系结构。该体系结构包括由 Web应用执行的公共操作,并
不是专门针对 Duwamish Online的。
图 1:逻辑体系结构
应用分为五个逻辑层。距离客户端最远的是数据层,其中存储了应用
所需的信息。它的上一层为数据访问层,它从数据库中数据的表示形式中
提取数据,并且包含所有数据库操作公用的例程。数据访问层直接由业务
逻辑层使用。业务逻辑层通过隐藏来自更高层的事务逻辑和实施细节来提
取业务事务。体系结构的下一个逻辑层是工作流层,也称为业务接口,它
提供了一个到表示层的简单界面(也称为接口)。工作流层管理内部状态,
并使用业务逻辑层提供的自动操作来完成复杂的工作流。最后是表示层,
它为用户转换工作流层返回的结果。有一些转换比较简单,例如通过 XSL
样式表将结果转换为 HTML ;有些则比较复杂,例如通过电话线阅读结果
的语音算法。
下面是从这个逻辑体系结构得出的几个物理体系结构。
物理体系结构
分发负载
SQL Server XML使数据库具备除读写数据之外的很多其他功能。XML
功能允许存储过程处理大量高度结构化的数据。相关信息可以作为 XML传
递到存储过程,从而允许业务逻辑或工作流以存储过程(而不是 COM+ 或
脚本)的形式实施。这意味着,现在您可以将更多应用处理移到数据库一
级。如果决定采用这种方式,请切记数据库是应用中可伸缩性最小的部分。
决定应用在数据库和 Web服务器之间分发处理的方式是非常关键的。
这将影响应用所需的软件和硬件,开发应用所需的专业技能,以及部署、
更新和维护的过程。为遵循简单性原则,我们将参考一个服务器配置,其
中 Web服务器执行大部分工作,属于“头重”类型。而那种由数据库服务
器执行大部分工作的配置则属于“脚重”类型。
对于大多数应用,有两方面的因素决定其选择“头重”服务器:
●成本:数据库服务器所用的软件和硬件比 Web 服务器所用的软件和硬
件成本高。
●可伸缩性:在 SQL Server 2000 中,数据库的可伸缩性在 SQL Server
7.0 的基础上得到改善,但是为了充分发挥新硬件的功能,还需要仔细
规划和有效维护。
基于以上原因,基于“脚重”类型的服务器配置体系结构留待以后讨
论。
Microsoft n-层物理体系结构
作为比较,我们先看一个没有使用SQL Server XML的Duwamish Online
(http://www.duwamishonline.com/)的物理体系结构。它的设计目的是
尽可能实现上面介绍的逻辑体系结构。尽管每一层都设计为执行一类逻辑
操作,但是,仍然出现功能分布超出范围的情况。例如,某些业务逻辑由
数据库中的存储过程执行以提高性能。那些熟悉Duwamish Books, Phase
4的用户很快就会发现结构的改变很小。
图 2:Microsoft n-层体系结构
此体系结构允许每个组件专用于一个特定任务,并使用最适合该任务
的技术。缓存用C++编写以最大程度提高性能;使用Active Server Pages
(ASP )和 XSL来控制表示逻辑;由 Microsoft Visual Basic ?执行工
作流、业务逻辑和数据访问;用 Transact SQL (T-SQL )控制组件和数
据库操作。未划定技术界限的各层将按照将其作为单独的 COM+ 组件实施
来划分。所有这些灵活性的代价是各层必须协同工作。跨环境调试是一项
艰难的工作,必须非常细心,以确保适合一种环境的数据必须重新设置格
式以适合其目标环境。(例如,字符串“a < b ”存储在数据库中不会出
现问题,但是如果没有经过转义就放入 XML文件中,将导致括号不匹配,
从而损坏分析程序。)
读取方物理体系结构
Duwamish Online 在整个应用中使用单一的物理结构。与此相反,基
于 SQL Server XML 的版本使用两个互补的物理体系结构:一个用于读取,
另一个用于写入。在我们的例子中,第二种比较合适,因为两种使用情况
需要不同类型的处理。
注意:请参阅 http://msdn.microsoft
[1] [2] 下一篇
