- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
软件体系结构风格
软件体系结构设计的一个核心问题是能否使用重复的体系结构
模式,即能否达到体系结构级的软件复用。也就是说,能否在不同的
软件系统中,使用同一体系结构。基于这个目的,学者们开始研究和
实践软件体系结构的风格和类型问题。
Garlan和Shaw根据此框架给出了通用体系结构风格的分类。
(1)数据流风格:批处理序列;管道/过滤器。
(2)调用/返回风格:主程序/子程序;面向对象风格;层次
结构。
(3)独立构件风格:进程通信;事件系统。
(4)虚拟机风格:解释器;基于规则的系统。
(5)仓库风格:数据库系统;超文本系统;黑板系统。
下面,我们将介绍一些典型的软件体系结构风格。
1.分层系统
层次系统组织成一个层次结构,每一层为上层服务,并作为下层
客户。例如,四层的分层式体系结构可以分为应用软件、业务软件、
中间件和系统软件。
这种风格支持基于可增加抽象层的设计。这样,允许将一个复杂
问题分解成一个增量步骤序列的实现。由于每一层最多只影响两层,
同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,同
样为软件复用提供了强大的支持。
层次系统最广泛的应用是分层通信协议。在这一应用领域中,每
一层提供一个抽象的功能,作为上层通信的基础。较低的层次定义低
层的交互,最低层通常只定义硬件物理连接。
2.客户/服务器
客户/服务器(Client/Server,C/S)软件体系结构是基于资源不
对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,
C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分
布到多个处理机上。C/S体系结构有3个主要组成部分,即数据库服
务器、客户应用程序和网络。
传统的C/S体系结构将应用一分为二,服务器(后台)负责数据
管理,客户机(前台)完成与用户的交互任务。服务器为多个客户应
用程序管理数据,而客户程序发送、请求和分析从服务器接收的数据,
这是一种“胖客户机”、“瘦服务器”的体系结构。
与二层C/S结构相比,在三层C/S体系结构中,增加了一个应用
服务器。可以将整个应用逻辑驻留在应用服务器上,而只有表示层存
在于客户机上。这种结构被称为“瘦客户机”。三层C/S体系结构是将
应用功能分成表示层、功能层和数据层3个部分,如图2-9所示。
图2-9三层C/S结构的一般处理流程
表示层是应用的用户接口部分,它担负着用户与应用间的对话功
能。它用于检查用户从键盘等输入的数据,显示应用输出的数据。为
使用户能直观地进行操作,一般要使用图形用户界面、操作简单、易
学易用。
功能层相当于应用的本体,它是将具体的业务处理逻辑编入程序
中。例如,在制作订购合同时要计算合同金额,按照定好的格式配置
数据、打印订购合同,而处理所需的数据则要从表示层或数据层取得。
表示层和功能层之间的数据交往要尽可能简洁。例如,用户检索数据
时,要设法将有关检索要求的信息一次性地传送给功能层,而由功能
层处理过的检索结果数据也一次性地传送给表示层。
数据层就是数据库管理系统,负责管理对数据库数据的读写。数
据库管理系统必须能迅速执行大量数据的更新和检索。现在的主流是
关系型数据库管理系统,因此,一般从功能层传送到数据层的要求大
都使用SQL语言。
浏览器/服务器(Browser/Server,B/S)风格是上述三层应用结
构的一种实现方式,其具体结构为:浏览器/Web服务器/数据库服
务器。B/S体系结构主要是利用不断成熟的WWW浏览器技术,结合
浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用
软件才能实现的强大功能,并节约了开发成本。从某种程度上来说,
B/S结构是一种全新的软件体系结构。
在B/S结构中,除了数据库服务器外,应用程序以网页形式存放
于Web服务器上,用户运行某个应用程序时只须在客户端上的浏览
器中输入相应的网址,调用Web服务器上的应用程序并对数据库进
行操作完成相应的数据处理工作,最后将结果通过浏览器显示给用
户。可以说,在B/S模式的计算机应用系统中,应用(程序)在一定
程度上具有集中特征。
基于B/S体系结构的软
文档评论(0)