第2章-软件体系结构风格2---CS类风格要点.ppt

上传人:得****1 文档编号:76351496 上传时间:2023-03-09 格式:PPT 页数:45 大小:2.17MB
返回 下载 相关 举报
第2章-软件体系结构风格2---CS类风格要点.ppt_第1页
第1页 / 共45页
第2章-软件体系结构风格2---CS类风格要点.ppt_第2页
第2页 / 共45页
点击查看更多>>
资源描述

《第2章-软件体系结构风格2---CS类风格要点.ppt》由会员分享,可在线阅读,更多相关《第2章-软件体系结构风格2---CS类风格要点.ppt(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

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结构各层间的通信效率若不高,即使分配给各层的硬件能力很强,其作为整体来说也达不到所要求的性能设计时必须慎重考虑三层间的通信方法、通信频度及数据量,这和提高各层的独立性一样是三

10、层C/S结构的关键问题(分层风格的固有缺点)29实现C/S应用系统的黄金10原则 1、尽量简化项目,使项目易于管理。应尽快建起一个初始系统,并尽早投入运行2、当项目规模较大时,能将其分割成由更小研发组担负的子项目3、要把精力花在设计上。首先要完全弄清“需求”,然后建立一个原型,以便测试设计中的“薄弱”环节。后来增加的特性或部件要确保和系统结构兼容。要奉行“拿来主义”。近来,可供选购的市售C/S产品非常多,要坚持“能买就买,为我所用”的原则。必要时,买来后可对系统加以修改,其中既包括基础部件也包括应用4、严格遵守业界标准5、采用TP监视器或对象事务处理管理器(Object Transaction

11、 Manager,OTM)30实现C/S应用系统的黄金10原则 6、要循序渐进。及时得到用户的反馈,确保项目各部分的良好衔接,及早解决接口问题,以确保项目进展协调;坚持“边分析,边设计;边编码,边测试”7、在应用研发过程中,不可忽视系统管理8、反复测试,包括用户信任测试、基准测试、系统测试、性能测试、系统集成测试、坚固性测试、服务交付测试等9、制定合理的工程进度10、制定完善的系统拓展计划,包括用户的培训和技术支持、高效的硬软件装载、已有数据和系统的平滑迁移31小结32浏览器/服务器(B/S)架构B/S 是三层 C/S 架构的一种实现方式 表现层:浏览器 逻辑层:Web服务器、应用服务器 数据

12、层:数据库服务器33J2EE平台架构示意34B/S 架构的优点浏览器端成为真正意义上的“瘦客户端”,客户端无任何业务逻辑,用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块良好的灵活性和可扩展性:对于环境和应用条件经常变动的情况,只要对业务逻辑层实施相应的改变,就能够达到目的,系统维护成本低较好的安全性:客户应用程序不能直接访问数据,应用服务器不仅可控制哪些数据被改变和被访问,而且还可控制数据的改变和访问方式三层模式可以将服务进行集中管理,统一服务于客户端,从而具备了良好的容错能力和负载平衡能力35B/S 架构的缺点客户端浏览器以同步的请求/响应模式交换数据,每请求一次服务器就要刷新一次页

13、面受HTTP协议“基于文本的数据交换”的限制,在数据查询的响应速度上,要远远低于C/S体系结构数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用受限于HTML的表达能力,难以支持复杂GUI(如报表等)36C/S 与 B/S 的比较(1/4)开发和维护升级:B/S 简化了客户端,无需像C/S 那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活 B/S 简化了系统的开发和维护,系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web

14、服务器上,并就不同的功能为各个组别的用户设置权限即可当形势变化时,B/S 无须再为每一个现有的客户应用程序升级,而只需对Web服务器上的服务处理程序进行修订。这样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦37C/S 与 B/S 的比较(2/4)用户的操作:采用C/S 时,客户应用程序有自己特定的规格,使用者需要接受专门培训;而采用B/S 时,客户端只是一个简单易用的浏览器软件,无论是决策层还是操作层的人员都无需培训就可以直接使用,B/S的这种特性,还使MIS系统维护的限制因素更少成本选择:采用B/S 使成本降低,选择更多。服务器操作系统的选择多样,用户操作不受影响B/S 特别

15、适用于网上信息发布,使得传统的MIS的功能有所扩展,这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力38C/S 与 B/S 的比较(3/4)交互性:交互性强是C/S 固有的一个优点。在C/S 中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。B/S 虽然由JavaScript、VBScript提供了一定的交互能力,但与C/S的一整套客户应用相比是太有限了安全性:C/S 提供了更安全的存取模式。由于C/S是配对的点对点

16、的结构模式,采用适用于局域网、安全性比较好的网络协议,安全性可以得到较好的保证。而B/S 采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证39C/S 与 B/S 的比较(4/4)网络通信量:B/S 采用了逻辑上的三层结构,而在物理上的网络结构仍然是原来的以太网或环形网。这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用同一条网络线路。而C/S 只有两层结构,网络通信量只包括Client与Server之间的通信量。所以,C/S处理大量信息的能力是B/S所无法比拟的数据处理

17、速度:由于C/S 在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S 快,使得C/S更利于处理大量数据40C/S+B/S 内外有别模式遵循“内外有别”的原则企业内部用户通过局域网直接访问数据库服务器 C/S 结构 交互性增强 查和改数据的响应速度高企业外部用户通过Internet访问Web服务器/应用服务器 B/S结构 用户不直接访问数据库 数据安全41C/S+B/S 查改有别模式遵循“查改有别”的原则不管用户处于企业内外什么位置(局域网或Internet),凡是需要对数据进行更新操作的(Add,Delete,Update)则考虑使用C/S结构如果只是执行一般的查询与浏览操

18、作(Read/Query),则考虑使用B/S 结构42J2EE中的 B/S+C/S 体系架构C/S与B/S的混合相当于分层风格里的松散分层模式43B/SC/S小结44重点:三层C/S、B/S、C/S与B/S混合风格实践作业 基于Web的信息系统系统功能:1、调研团购网站的基本功能,实现校园团购系统;2、实现教学互动专区,学生和老师都可以实名制建立主题,并在某一个主题下匿名发表意见,形成讨论组3、其他软件系统,但选题需征得我的同意编程要求:Struts+Hibernate 框架,Spring为可选,4月底完成,五一休假后检查实践目的:1、体会分层、事件调用、MVC、B/S 等多种体系结构风格2、掌握基于框架的web应用程序设计方法45

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁