BS结构与CS结构软件的区别

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C/S又称Client/Server或客户/服务器模式。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQLServer。客户端需要安装专用的客户端软件。B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer,服务器安装Oracle、Sybase、Informix或SQLServer等数据库。浏览器通过WebServer同数据库进行数据交互。C/S的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。对客户端的操作系统一般也会有限制。可能适应于Win98,但不能用于win2000或WindowsXP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。B/S结构与C/S结构软件的区别一、简单的说:B/S是浏览器服务器模式,比如E-mail.C/S是客户端服务器模式,比如QQ.二、具体的说:1、软件本身:1)编写程序要求不同:C/S意思是客户端的程序编写,而B/S是服务器端的编写,B/S必须有多年的C/S经验才能编写的.2)管理信息系统不同:(硬件环境的要求和操作、)传统的管理信息系统一般采用C/S架构(客户机/服务器,Client/Server)方式来完成。一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务,在这一架构中,业务逻辑位于客户端,每完成一项事务,都要频繁地访问数据库,使得网络上数据流量非常大,对于慢速连接的用户,甚至无法使用。而B/S架构实际上是三层架构,建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备.信息自己管理.有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。在这种架构中,业务逻辑放置于中间件服务器上,大量的数据流也位于中间件和数据库之间,而客户机只是简单地发出请求,中间件接受请求后进行事务处理并将处理的结果返回给客户机,这一类型的客户机也称之为“廋客户”3)信息流不同传统的C/S架构的软件需要针对不同的操作系统开发不同版本的软件,面对众多的操作系统和软件快速的升级换代,软件系统的改进和升级越来越频繁。并且C/S程序一般是典型的中央集权的机械式处理,交互性相对低。用户使用起来很不方便。而采用Java语言实现的B/S架构的软件产品真正做到了“一次编写处处运行(WriteOnce,RunAnywhere)”,所有的客户端只是浏览器,所有的操作都和上网浏览网页类似。信息流向可变化,B-BB-CB-G等信息、流向的变化,更象交易中心。2、成本不同:二次开发、维护需要人财物)传统的C/S架构的软件需要针对不同的操作系统开发不同版本的软件,而面对众多的操作系统和软件快速的升级换代,程序由于整体性,必须整体考察,处理出现的问题以及系统升级.升级难.可能是需要再做一个全新的系统,需要大量的人、财、物的投入,并且时间周期漫长。而且C/S多是建立的Window平台上,表现方法有限,对维护人员普遍要求较高。B/S架构的产品在维护和升级方面具备显著的优势。B/S构件组成,方面构件个别的更换,实现系统的无缝升级.系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.,无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只对服务器进行,通过远程连接服务器,异地的运维人员甚至于可以做到远程维护和升级,B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流.并且大部分难度减低,减低开发成本.这对人力、时间、费用的节省是相当惊人的。3、安全性不同:传统的C/S架构的软件需要针对不同的操作系统开发,不同版本的软件,面对众多的操作系统和软件快速的升级换代,采用这一架构开发软件,对于企业的IT投资无疑是一种巨大的风险。而采用Java语言实现的B/S架构的软件产品真正做到了“一次编写处处运行”,Java语言实现的软件具有天然的健壮性。这是Java语言自身的特性保证的。利用Java写成的软件几乎不可能造成系统崩溃,这正是安全性要求很高的企业级应用所不可或缺的特性,对企业而言,可以规避将来更换操作系统所带来的风险。B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk2000Exchange2000等,全面支持网络的构件搭建的系统.SUN和IBM推的JavaBean构件技术等,使B/S更加成熟.三、B/S与C/S架构的优缺点C/S架构的优缺点优点:1.C/S架构的界面和操作可以很丰富。2.安全性能可以很容易保证,实现多层认证也不难。3.由于只有一层交互,因此响应速度较快。缺点:1.适用面窄,通常用于局域网中。2.用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。3.维护成本高,发生一次升级,则所有客户端的程序都需要改变。B/S架构的优缺点优点:1)客户端无需安装,有Web浏览器即可。2)BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。3)BS架构无需升级多个客户端,升级服务器即可。缺点:1)在跨浏览器上,BS架构不尽如人意。2)表现要达到CS程序的程度需要花费不少精力。3)在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。4)客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。(在Ajax风行后此问题得到了一定程度的缓解)B/S结构模式与C/S结构模式的分析比较商用计算模式从最初的集中式计算,经过了Client/Server阶段,已发展到目前最流行的Browser/Server计算模式,本文主要分析比较B/S结构模式与C/S结构模式。*集中式计算模式第一代计算模式是集中式计算及主机模式,由大型机和多个与之相连的哑终端组成。这种计算模式的主要优点是:安全性好;可靠性高;计算能力和数据存储能力强;系统维护和管理的费用较低。但是它也存在着一些明显的缺点,如:硬件的初始投资高;可移植性差;资源利用率低;网络负载大。该模式仍是一些特定应用场合下重要的计算处理方式,如金融领域等。尽管其它的计算模式在计算能力和可伸缩性方面已向大型机逼近,但当支持大量用户和数据时,大型机自顶向下的维护和管理方式仍显示着集中式处理的优越性。*Client/Server模式随着PC机的诞生与应用,计算模式从集中式(数据和应用逻辑在一台主机上)转向了分布式(数据和逻辑跨越多个节点机),尤为典型的是Client/Server结构,它的发展经历了两个阶段:从两层结构到三层结构。*两层结构:如上图所示,它由两部分构成:前端是客户机,通常是PC,主要完成用户界面显示,接受数据输入,校验数据有效性,向后台数据库发请求,接受返回结果,处理应用逻辑;后端是服务器,运行DBMS,提供数据库的查询和管理。应用逻辑主要在前端,如在后端则是存储过程的形式,这种结构在八十年代及九十年代初得到了大量应用,最直接的原因是可视化开发工具的应用。随着应用规模的扩大,人们逐渐发现了两层C/S结构的许多不足:*首先是系统的可伸缩性差,用户数一旦大起来,通常会出现通讯堵塞、数据库响应慢等各种问题。*几乎所有的应用逻辑都在客户端进行,导致应用的可扩展性差,而且很难和其它系统进行互操作。*当系统需要涉及多个数据库时,依赖于数据库本身的互联能力,难以支持多个异构数据库。*客户端程序和Server端DBMS交互频繁,网络通讯量大。*客户端的应用程序越来越复杂,对安全性和业务变化的管理能力差,所有客户机都需要安装、配置数据库客户端软件,同时要维护如此“肥”且节点众多的客户机更是一件十分庞杂的工作。*三层结构:三层应用结构是伴随着中间件技术的成熟而兴起的。核心概念是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次。(见图3)三个层次的划分是从逻辑上来分的,具体的物理分法可以有多种组合。基于三层结构的应用系统不但具备了大型机系统稳定、安全和处理能力高等特性,同时拥有开放系统成本低、可扩展性强、开发周期短等优点。而中间件作为构造三层结构应用系统的基础平台,提供了以下主要功能:负责客户机与服务器间、服务器间与服务器间的联接和通讯;实现应用与数据库的高效连接;提供一个三层结构应用的开发、运行、部署和管理的平台。常用的中间件技术主要有:*TransactionProcessingMoni-tor:典型的产品有BEA的Tuxedo和IBM的CICS,尤其适用于OLTP类型的应用。*RPC(RemoteProcedureCalls):面向过程的透明同步远程调用,在DCE中得到了大量实现。*MOM(MessageOrientedMid-dleware):消息中间件,用于保障消息的可靠传递。典型的产品有BEA的MessageQ及IBM的MQSeries。*ORB(ObjectRequestBro-ker):对象请求代理,OMG的CORBA规范对此作了相应的定义。典型的产品有BEA的Tuxedo、IONA的Orbix及Inprise的VisiBro-ker。三层结构与传统的两层C/S结构相比体现了集中式计算的优越性:具有良好的开放性;减少整个系统的成本,维护升级十分方便;系统的可扩充性良好;系统管理简单,可支持异种数据库,有很高的可用性;可以进行严密的安全管理。目前三层结构是建立在TPMonitor、CORBA等中间件产品基础之上的,严格地来讲这些产品还缺乏作为企业级应用平台的一些特性;也没有类似于Container这样的运行环境的概念;难以扩展到Internet这样的环境上去。而且要求应用开发者自己去处理:事务管理,消息队列,数据的复制和同步,系统的FailOver和FailBack通讯安全,这些都对应用开发者提出了较高的要求,而且迫使应用开发者投很多精力来解决这些系统级的问题。*Browser/Server模式Browser/Server计算模式实质上是以Java技术为核心、以J2EE为平台的计算模式。其层次结构如图2:客户端浏览器通过HTTP协议向Ja-va应用服务器发送请求。Web层的Servlets或JSPs生成网页用来完成表示层逻辑,它们的主要作用是接受并检验用户输入,调用后端的业务逻辑层,并把业务逻辑层处理的结果返回给用户。JSP和Servlet都运行在应用服务器端。业务逻辑层由EJB来实现,EJB通过JDBC访问DBMS,或通过其他途径去访问遗留系统。处于第一层的是客户端,与C/S结构中的客户端不同,Browser/Server结构的客户层只保留一个Web浏览器(如IE或Navigator等),不存放任何应用程序,在C/S模式下,用户在使用之前,他们必须在Client端安装此应用,提供关于Server的信息,配置Client端的参数。用户需要参与Client端软件的维护,例如升级Client端等。如果用户工作在不同的平台上,那还得根据

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功