前面讲过,数据库驱动的Web应用通常包含三层:表示层、逻辑层和存储层。为更好地帮助读者理解Web应用技术是如何进行交互的,从而为用户带来功能丰富的Web体验,我们借助图1-1来说明前面描述的那个简单的三层架构示例。
表示层是应用的最高层,它显示与商品浏览、购买、购物车内容等服务相关的信息,并通过将结果输出到浏览器/客户端层和网络上的所有其他层来与应用架构的其他层进行通信。逻辑层是从表示层剥离出来的,作为单独的一层,它通过执行细节处理来控制应用的功能。数据层包括数据库服务器,用于对信息进行存储和检索。数据层保证数据独立于应用服务器或业务逻辑。将数据作为单独的一层还可以提高程序的可扩展性和性能。在图1-1中,Web浏览器(表示层)向中间层(逻辑层)发送请求,中间层通过查询、更新数据库(存储层)响应该请求。三层架构中一条最基本的规则是:表示层不应直接与数据层通信。在三层架构中,所有通信都必须经过中间件层。从概念上看,三层架构是一种线性关系。
|
(点击查看大图)图1-1 简单的三层架构 |
在图1-1中,用户激活Web浏览器并连接到http://www.victim.com。位于逻辑层的Web服务器从文件系统中加载脚本并将其传递给脚本引擎,脚本引擎负责解析并执行脚本。脚本使用数据库连接器打开存储层连接并对数据库执行SQL语句。数据库将数据返回给数据库连接器,后者将其传递给逻辑层的脚本引擎。逻辑层在将Web页面以HTML格式返回给表示层的用户的Web浏览器之前,先执行相关的应用或业务逻辑规则。用户的Web浏览器呈现HTML并借助代码的图形化表示展现给用户。所有操作都将在数秒内完成,并且对用户是透明的。
【责任编辑: 云霞 TEL:(010)68476606】
|