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

上传人:b****6 文档编号:6795480 上传时间:2023-01-10 格式:DOCX 页数:21 大小:40.06KB
下载 相关 举报
BS结构与CS结构软件的区别.docx_第1页
第1页 / 共21页
BS结构与CS结构软件的区别.docx_第2页
第2页 / 共21页
BS结构与CS结构软件的区别.docx_第3页
第3页 / 共21页
BS结构与CS结构软件的区别.docx_第4页
第4页 / 共21页
BS结构与CS结构软件的区别.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

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

《BS结构与CS结构软件的区别.docx》由会员分享,可在线阅读,更多相关《BS结构与CS结构软件的区别.docx(21页珍藏版)》请在冰豆网上搜索。

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

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

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端等。

如果用户工作在不同的平台上,那还得根据不同的平台专门为其开发相应的Client端。

  处于第二层的是应用服务层,由一台或多台服务器组成,Web服务器也位于这一层,JavaApplicationServer处理应用中的业务逻辑,该层具有良好的可扩充性,可以随着应用的需要增加服务器的数目,由于管理工作主要针对服务器进行,相对于C/S结构而言无论是工作的复杂性还是工作量都大大减少了。

  处于第三层的是数据层,由数据库系统和遗留系统组成。

  B/S结构模式与C/S结构模式相比,本质区别在于B/S结构模式是基于标准的J2EE平台的。

传统的Client/Server程序将应用逻辑和中间件混在一起,应用开发者不得不关心很多事情:

保持服务器端的对象的永久性,在网络上找到对象,保障对象的安全,杜绝对象共享冲突,避免对象调用失败,管理对象的生命周期以及确保对象的粒度和可用性等。

这使应用的维护、移植和互操作变得复杂。

而Java应用服务器将企业的应用逻辑和中间件分开,采用EJB及其它基于J2EE的服务,应用的开发可以独立于底层的中间件,EJB开发者只需要关心他们的业务逻辑,其余的由服务器与容器来负责,Java应用服务器隐藏了这些复杂性,使开发者能集中精力于业务逻辑本身。

  BEA系统有限公司高级系统工程师嵇小峰

《国际金融报》(2002年03月12日第八版)

一、什么是C/S和B/S

要想对“C/S”和“B/S”技术发展变化有所了解,首先必须搞清楚三个问题。

第一、什么是C/S结构。

C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。

它是软件系统

体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。

目前大多数应用软件系

统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以

进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应

用系统。

这也就是目前应用系统的发展方向。

传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中

无论是Client端还是Server端都还需要特定的软件支持。

由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发

不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。

而且代价高,效率低。

第二、什么是B/S结构。

B/S(Browser/Server)结构即浏览器和服务器结构。

它是随着

Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端

(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。

这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。

以目前的技术看,局域网建立B/S结构的网络应

用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。

它是一次性到位的开发,能实现不同的人员,从不同的地

点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服

务器数据库也很安全。

特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

第三、管理软件主流技术。

管理软件技术的主流技术与管理思想一样,也经历了三个发展时期。

首先,界面技术从上世纪DOS字符界面到Windows图形界面(或图形用户界面GUI),直至Browser浏览器界面三个不同的发展时期。

其次,今天所有电脑的

浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其风格都是一样的,使用人对操作培训的要求不高,而且软件可操作性强,易于识

别;再者,平台体系结构也从过去单用户发展到今天的文件/服务器(F/S)体系、客户机/服务器(C/S)体系和浏览器/服务器(B/S)体系。

二、C/S和B/S之比较

C/S和B/S是当今世界开发模式技术架构的两大主流技术。

C/S是美国Borland公司

最早研发,B/S是美国微软公司研发。

目前,这两项技术以被世界各国所掌握,国内公司以C/S和B/S技术开发出产品也很多。

这两种技术都有自己一定的市

场份额和客户群,各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群体,都有一大群文人墨客为自己摇旗呐喊,广告满天飞,可

谓仁者见仁,智者见智。

1、C/S架构软件的优势与劣势

(1)、应用服务器运行数据负荷较轻。

最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。

二者可分别称为前台程序与后台程序。

运行数据库服务器程序的机器,也称为应用服务器。

一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。

(2)、数据的储存管理功能较为透明。

在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应

用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能

建立定单这样的规则。

所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。

在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。

在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。

(3)、C/S架构的劣势是高昂的维护成本且投资大。

首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两

地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就

必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。

其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。

在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。

2、B/S架构软件的优势与劣势

(1)、维护和升级方式简单。

目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。

对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之

间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。

无论用户的规模有

多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和

共享。

所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。

今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户

人力、物力、时间、费用的节省是显而易见的,惊人的。

因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。

(2)、成本降低,选择更多。

大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。

现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。

所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。

比如说很多人每天上“网易”(原文为新浪)网,只要安装了浏览器就可以了,并不需要了解“网易”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。

(3)、应用服务器运行数据负荷较重。

由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。

但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。

因此,许多单位都备有数据库存储服务器,以防万一。

3,C/S与B/S区别

Client/Server是建立在局域网的基础上的,Browser/Server是建立在广域网的基础上的。

(1)、硬件环境不同:

C/S一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。

B/S建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。

(2)、对安全要求不同

C/S一般面向相对固定的用户群,对信息安全的控制能力很强。

一般高度机密的信息系统采用C/S结构适宜,可以通过B/S发布部分可公开信息。

B/S建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群。

(3)、对程序架构不同

C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。

B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。

比C/S有更高的要求,B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk2000Exchange2000等,全面支持网络的构件搭建的系统。

SUN和IBM推的JavaBean构件技术等,使B/S更加成熟。

(4)、软件重用不同

C/S程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。

B/S对的多重结构,要求构件相对独立的功能。

能够相对较好的重用。

就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。

(5)、系统维护不同

系统维护是软件生存周期中,开销大,相当重要

C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级难,可能是再做一个全新的系统。

B/S构件组成方面构件个别的更换,实现系统的无缝升级。

系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。

(6)、处理问题不同

C/S程序可以处理用户面固定,并且在相同区域,安全要求高的需求,与操作系统相关,应该都是相同的系统。

B/S建立在广域网上,面向不同的用户群,分散地域,这是C/S无法作到的,与操作系统平台关系最小。

(7)、用户接口不同

C/S多是建立在Window平台上,表现方法有限,对程序员普遍要求较高。

B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,降低开发成本。

(8)、信息流不同

C/S程序一般是典型的中央集权的机械式处理,交互性相对低。

B/S信息流向可变化,B-B、B-C、B-G等信息流向的变化,更象交易中心。

打印该页返回前页

B/S结构的软件与C/S结构软件的区别

近段时间,客户以及渠道商反应B/S与C/S软件之间的区别比较迷惑,于是笔者通过多种渠道,整理有关于这两种架构区别的对话以及论述。

希望能对我们的客户以及渠道商有所帮助,同时希望各位看官能以辨证和理性的角度去看待这两者之间的区别,从而选择较为合适的软件,以帮助您解决您现实中遇到的种种问题。

一、简单的说:

B/S是浏览器服务器模式,比如E-mail.C/S是客户端服务器模式,比如QQ.

二、具体的说:

1、B/S的报表不灵活、套打不灵活、配载不灵活、核销不灵活。

2、速度慢,安全性差,不能够做个性化设置,报表无法根据客户要求调整,需要调整要另外收费。

招商银行的网上银行都是要装客户端的。

3、业务数据由别人掌管,很难放心的。

有可能每年还要另外交托管费。

4、ASP代码的水平,根本不可能达到我们那种配载的功能。

每一个报表的排序或格式,都要重新动开发。

5、维护起来很费劲,人家就不是当一个产品来做企业的。

有可能只是赚个短平快的钱。

c/s不流行

b/s瘦客户端,以后的发展趋势

c/s:

client/server客户端/服务器端模式

b/s:

b

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1