第2章-软件体系结构风格2---CS类风格要点.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第2章-软件体系结构风格2---CS类风格要点.ppt》由会员分享,可在线阅读,更多相关《第2章-软件体系结构风格2---CS类风格要点.ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章 软件体系结构风格13.1 经典的软件体系结构风格3.2 C/S、B/S类架构3.3 分布式对象技术3.4 其他软件体系结构风格 C/S、B/S类体系架构 1.计算模式的演化史2.客户机/服务器(C/S)模式3.两层 C/S 架构4.三层 C/S 架构5.浏览器/服务器(B/S)架构6.C/S+B/S 混合架构2计算模式的演化1965-1985:以大型机为核心的集中式处理模式1986-1990:以PC/文件服务器为核心的文件共享计算模式1990-1996:以C/S架构为主流的分布式计算模式1996-:以Web为核心、B/S架构为主流的分布式计算模式2000-:以各类移动设备为核心的普适计
2、算模式(无所不在的计算,无所不在的通讯)2005-:以Grid、P2P、Cloud等技术为核心的分布式计算模式3集中式计算模式所有的计算能力均属于中央宿主计算机用户通过一台物理上与宿主机相连的非智能终端来访问宿主机上的应用程序客户机可能为PC或工作站4文件共享体系结构(File Sharing)文件存储在一个中央计算机或者共享服务器中被网络上的多个计算机同时访问5文件共享体系结构的特征最初的PC网络就是基于此类结构,从共享服务器下载文件到客户机的桌面环境下被请求的用户任务(包括业务逻辑和数据)在客户机环境下执行适合应用于数据量较低的场合6文件共享体系结构的缺陷客户端和服务器之间需要移动大量不必
3、要的数据,降低了应用性能客户端必须相当健壮,它要完成几乎所有的功能,同时必须有足够的磁盘空间来存储下载的文件和表容易破坏数据完整性(多个用户共同访问同一个文件)对环境变化及用户需求变更的适应性差,一旦发生变化,客户机与服务器的程序都要修改,增加了维护工作量7客户机/服务器模式Client-Server Architecture文件共享结构的缺陷导致了C/S模式的出现数据库服务器代替了文件服务器服务器使用DBMS,快速应答用户请求RPC 或 SQL 是客户机和服务器之间的典型通讯模式8客户机/服务器模式特征一个应用系统被分为两个逻辑上分离的部分,每一部分充当不同的角色、完成不同的功能,多台计算机
4、共同完成统一的任务客户机(前端,front-end):业务逻辑、与服务器通讯的接口服务器(后端:back-end):与客户机通讯的接口、业务逻辑、数据管理客户机为完成特定的工作向服务器发出请求,而 服务器处理客户机的请求并返回结果9客户机/服务器模式流程10客户机/服务器模式的发展历程11两层两层C/S三层三层C/S多层多层C/S客户机/服务器模式的组成客户机:GUI,请求描述,业务逻辑,服务代理及通信服务器:调度管理,事务处理,业务逻辑,共享资源管理,通信二者间有通信连接机制,遵循公共的通信协议:描述请求,描述返回结果,描述连接关系和状态例如:RPC,HTTP,SOAP(简单对象访问协议)C
5、/S的优势:降低了网络通讯量(提供请求/应答模式,而非文件传输),多用户通过GUI访问共享数据库12客户机/服务器的连接方式13两层 C/S 架构14两层 C/S 架构的流程15用户界面处于客户机数据库管理服务处于服务器端,通常是存储过程/触发器的形式业务处理过程(即业务逻辑)被分解为客户机与服务器两部分两层 C/S 架构的基本构件数据库服务器:存放数据的数据库、负责数据处理的业务逻辑客户机应用程序:GUI用户界面、利用客户机上的应用程序对数据进行处理的业务逻辑连接件:经由网络的调用/返回机制或事件机制,客户机向服务器发送请求,并接收返回结果16两层 C/S 架构的业务逻辑划分业务逻辑的划分比
6、重:在客户端多?还是在服务器多?胖客户端:客户端执行大部分的数据处理操作瘦客户端:客户端具有很少或没有业务逻辑17胖客户端 or 瘦客户端18两层 C/S 架构的限制系统伸缩性差:当用户数超过一定数量,性能急剧恶化 导致:服务器成为系统的瓶颈互操作性差:使用DBMS所提供的私有数据编程语言来开发业务逻辑,降低了DBMS的灵活选择 导致:软件移植困难,新技术无法轻易使用系统管理与配置成本高:当系统升级时,每个客户端都需要随之改变 导致:维护和升级困难19两层 C/S 架构的适用范围两层C/S架构通常被用在那些管理与操作不太复杂的非实时的信息处理系统适合于轻量级事务,客户机对服务器的请求少,数据传
7、输量少当业务逻辑较少变化以及用户数少于100时,两层C/S架构的性能较好20三层 C/S 架构三层C/S体系结构的出现克服了两层C/S的缺陷在客户端与数据库服务器之间增加了一个中间层中间层可能为:事务处理服务器、消息服务器、应用服务器等中间层负责调度、业务逻辑执行、数据传输等功能21三层 C/S 架构22三层 C/S 架构的流程23三层 C/S 架构的内容24三层 C/S 架构示意25数数数数 据据据据 库库库库为用户提供为用户提供交互操作界面交互操作界面 负责关键业务的负责关键业务的处理和数据传递处理和数据传递 实现数据库实现数据库访问访问 服务员服务员 厨师厨师 采购员采购员 客客户户请请
8、求求客客户户请请求求响响应应数数据据响响应应数数据据三层 C/S 架构的物理结构两层C/S已经将数据层分离出来,三层C/S则要将表示层与功能层分离开来,形成独立的程序,并使二者之间的接口简洁明了问题:这三个层次在物理上是如何分布的?26基于集群(Cluster)的C/S物理分布事实上,功能层并不一定只驻留在一台服务器上,数据层也是如此;如果功能层(或数据层)分布于多台服务器,那么就形成了基于集群(Cluster)的C/S物理分布模式用来改善速度、提高可靠性与可用性,降低成本负载均衡是集群里的一个关键要素27三层 C/S 架构的优点在用户数目较多的情况下,三层C/S结构将极大改善性能与灵活性允许
9、合理地划分三层结构的功能,使之在逻辑上保持相对独立性,能提高系统和软件的可维护性和可扩展性 UI、BL、DB可以分别加以复用允许更灵活有效地选用相应的平台和硬件系统,并且这些平台和各个组成部分可以具有良好的可升级性和开放性各层可以并行开发,选择各自适合的开发平台和开发语言利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而非法的访问数据层,为严格的安全管理奠定了坚实的基础28三层 C/S 架构的缺点三层C/S结构各层间的通信效率若不高,即使分配给各层的硬件能力很强,其作为整体来说也达不到所要求的性能设计时必须慎重考虑三层间的通信方法、通信频度及数据量,这和提高各层的独立性一样是三
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 体系结构 风格 CS 要点
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内