应用程序的体系结构

一个应用程序的体系结构是应用程序结构的一种概念性描述。

当前,随着信息技术的飞速发展,现代企业中大多数采用了分布式计算机系统。日益激烈的竞争要求应用程序尽量缩短开发周期,并且具有高度的灵活性,以适应变化多端的市场需要。这一切都对分布式应用程序的开发人员在业务方面和技术方面提出了挑战。

传统的分布式应用程序大多是两层的客户机/服务器模式(Client/Server),客户机直接连接到服务器上,在客户机上负责处理数据和执行客户端应用程序。

这种两层的应用程序体系结构存在着许多限制:客户连接的开销、服务器数据格式的限制、可扩展性等。尤其是当客户的数目未知,或者客户数目可能非常庞大时,两层的应用程序体系结构将无法处理这种情况。

为了提高分布式应用程序的灵活性和可重用性,可以在两层的体系结构中再加入第三层,这就是三层式应用程序体系结构:

表示层向用户提供数据,展现用户接口。

商业层用以实施商业逻辑,表示层使用商业层提供的服务。

数据访问层执行具体的数据访问服务,包括检索和存储。

在三层式应用程序体系结构中,商业层不固定地连接到任何客户,也不关心数据的存储方式。修改任何一层,都不会对其它层产生不良影响。每种服务都是独立的,并且可用新的方式进行组合,创建新的应用程序。这种三层结构方便开发人员创建高伸缩性的应用程序。

注意:三层式应用程序并不意味着三台独立的计算机。三层体系结构是一个逻辑模型,具体采用哪种物理模型依赖于提供服务的位置。

时间: 2024-11-03 19:32:46

应用程序的体系结构的相关文章

超越MVP:为企业级应用程序UI体系结构扩展MVP模式

Model-View-Presenter (MVP) 展现了一种关于 UI 模式的突破性思维方式,并明确了 UI 设计人员应 该在应用程序中保持独立. 但是,对 MVP 模式有许多种不同的解释.例如,有些人想当然地认为 MVP 模式明确表示 UI 体系结 构模式.这对于企业级应用程序来说,并不完全正确.与其他类型的 UI 应用程序相比,企业级应用程序 需要满足许多不同的需求,涉及更多相关方,更加复杂,而且更多地交叉依赖于其他系统(例如服务.其 他应用程序等).这些独有的特征要求企业级应用程序的

智能客户端-使用 NHibernate 和 Rhino 服务总线构建分布式应用程序

有很长一段时间,我的工作内容几乎都是 Web 应用程序.当我要构建一个智能客户端应用 程序时,起初我觉得非常困惑,不知该如何构建这样的应用程序.怎么处理数据访问?智能客 户端应用程序与服务器之间如何通信? 而且,我那时已经投入很多,拥有一些能够显著减少开发时间和成本的工具,而我真的希望 可以继续使用这些工具.我花了一段时间来深入考虑各种细节问题,在这期间,我一直在想如 何让 Web 应用程序更简单些呢,当然我需要先知道如何处理这样的应用程序. 智能客户端应用程序有利有弊.从有利的一面看,智能客户

使用 AOP 来维护遗留 Java 应用程序

程序 处理复杂和不熟悉 Java 代码的技术级别:中级 Abhijit Belapurkar(abhijit_belapurkar@infosys.com)高级技术架构师,Infosys Technologies Limited2004 年 3 月 如果您曾经接管并且必须维护某个基于 Java 的应用程序,那么本文就是为您准备的.作者 Abhijit Belapurkar 将向您展示如何使用面向方面编程(aspect-oriented programming,AOP)来对即使最不透明的遗留应用程

使用Flex和Dojo开发交互式Web应用程序

简介:本文分为四个部分,首先简单介绍交互式 Web 应用程序的体系结构,分析 Dojo 技术和 Flex 技术的用途:然后通过一个具体实例来讲述 Flex 应用程序的开发及与传统 Web 项目的结合:其次同样 通过实例介绍如何在 Web 客户端中使用 Dojo 技术,及如何和后台服务进行交互,最后分析 Flex 技术 和 Dojo 技术结合使用这种模式在交互式 Web 应用程序中的可行性和所具有的优势.通过本文的讲解, 一方面读者能够清楚的了解到同时使用 Flex 和 Dojo 的必要性.可行性

101_《Delphi5程序员指南》

<Delphi5程序员指南> Delphi 教程 系列书籍 (101) <Delphi5程序员指南> 网友(邦)整理 EMail: shuaihj@163.com 下载地址: Part1 Part2 Part3 Part4 Part5 Part6 Part7 作者: 蒋方帅 出版社:人民邮电出版社 ISBN:9787115086761 上架时间:2007-12-14 出版日期:2000 年8月 页码:1046 版次:1版1次 内容简介 本书介绍了Delphi5的各方面内容.全书共分

多层数据库开发一:设计数据库应用程序

                                          第一章 设计数据库应用程序 数据库应用程序允许用户与存储在数据库中的信息进行交互.数据库提供了信息的结构,供不同的应用程序共享. Delphi 4支持关系型数据库.关系型数据库以行和列即表格的形式来组织信息.当您设计一个数据库应用程序的时候,必须了解数据的结构,这样才能设计出一个合适的用户界面来显示数据库中的数据并且允许用户输入新的数据或者修改已有的数据.1.1 使用 数据库构件选项板的"Data Access&

多层数据库开发二:单层和两层的应用程序

                                               第二章 单层和两层的应用程序 单层和两层的数据库应用程序相对来说比较简单,应用程序和数据库往往在同一个文件系统中,甚至就在同一个磁盘上.这两种类型的数据库应用程序都不太适合于在多用户的环境下同时访问同一个数据库. 对于单层的应用程序来说,Delphi 4提供了两种获得数据的方式,一种方式是通过BDE,另一种方式是通过文件.两层的应用程序一般要使用BDE.2.1 基于BDE的应用程序 由于BDE以及数据访

《Windows网络与通信程序设计(第3版)》——1.4 网络应用程序设计基础

1.4 网络应用程序设计基础 本节讲述网络应用程序设计的原则和网络程序开发环境的设置. 1.4.1 网络程序体系结构在创建网络应用程序之前,首先要决定应用程序的体系结构.应用程序体系结构(application architecture)由应用程序开发者设计,它指定了在各种各样的终端系统上,应用程序是如何组织的.本节介绍现有的主要体系结构:客户机/服务器体系结构.P2P体系结构和这两种结构的混合. 1.客户机/服务器体系结构在客户机/服务器体系结构中,有一个总是在运行的主机,称为服务器,它为来自

浅析Android系统的架构以及程序项目的目录结构

Android框架结构 直接上图: 由上图,我们可以看出Android系统架构由5部分组成, 分别是:Linux Kernel(linux内核).Android Runtime(运行时环境).Libraries(类库).Application Framework(应用框架).Applications(应用). 1.1.Linux Kernel Android基于Linux 2.6提供核心系统服务,例如:安全.内存管理.进程管理.网络堆栈.驱动模型.Linux Kernel也作为硬件和软件之间的抽