本文的内容来自网络,经过汇编总结而成!!
摘要:
B/S构架和C/S构架区别,每个构架有自己不同的特点和优缺点!简单的说B/S构架就是浏览器/服务器,C/S构架就是Client/Server。
B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、javascript…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows 98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。
B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(×××)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点,须视企业规模和地理分布确定。企业内部通过防火墙接入Internet,在整个网络采用TCP/IP协议。
什么是
C/S
架构
C/S
架构
C/S 架构是一种典型的两层架构,其全程是Client/Server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。
C/S 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是SQL或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。
C/S 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是SQL或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。
它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件, 加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。
★
C/S
模式的优点
●由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。
●操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。
●C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。
★
C/S
模式的缺点
●需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。
●兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序。
●开发成本较高,需要具有一定专业水准的技术人员才能完成。
什么是
B/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架构管理软件更是方便、快捷、高效。
B/S
架构的优缺点
★
B/S
模式的优点
●具有分布性特点,可以随时随地进行查询、浏览等业务处理。
●业务扩展简单方便,通过增加网页即可增加服务器功能。
●维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
●开发简单,共享性强。
★
B/S
模式的缺点
●个性化特点明显降低,无法实现具有个性化的功能要求。
●操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。
●页面动态刷新,响应速度明显降低。
●无法实现分页显示,给数据库访问造成较大的压力。
●功能弱化,难以实现传统模式下的特殊功能要求。
管理软件主流技术
管理软件技术的主流技术与管理思想一样,也经历了三个发展时期。首先,界面技术从上世纪DOS字符界面到Windows图形界面(或图形用户界面GUI),直至Browser浏览器界面三个不同的发展时期。其次,今天所有电脑的浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其风格都是一样的,使用人对操作培训的要求不高,而且软件可操作性强,易于识别;再者,平台体系结构也从过去单用户发展到今天的文件/服务器(F/S)体系、客户机/服务器(C/S)体系和浏览器/服务器(B/S)体系。
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.对程序架构不同
3.对程序架构不同
C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑。
B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上。 比C/S有更高的要求,B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统。 SUN 和IBM推的JavaBean 构件技术等,使B/S更加成熟。
4.软件重用不同
4.软件重用不同
C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好。
B/S 对的多重结构,要求构件相对独立的功能。 能够相对较好的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。
5.系统维护不同
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等信息流向的变化, 更象交易中心。
C/S
与
B/S
:本不该成冤家
随着PC机的诞生与应用,计算模式从集中式(数据和应用程序在一台主机上)转向了分布式(数据和应用程序跨越多个节点机),尤为典型的是C/S结构(Client/Server的简称,客户机/服务器模式)。两层结构C/S模式,在上个世纪八十年代及九十年代初得到了大量应用,最直接的原因是可视化开发工具的推广。之后,它开始向三层结构发展。近来,随着网络技术不断发展,尤其是基于Web的信息发布和检索技术、Java计算技术以及网络分布式对象技术的飞速发展,导致了很多应用系统的体系结构从C/S结构向更加灵活的多级分布结构演变,使得软件系统的网络体系结构跨入一个新阶段,即B/S体系结构(Browser/Server的简称,浏览器/服务器模式)。基于Web的B/S方式其实也是一种客户机/服务器方式,只不过它的客户端是浏览器。为了区别于传统的C/S模式,才特意将其称为B/S(浏览器/服务器)模式。认识到这些结构的特征,对于系统的选型而言是很关键的。
系统的性能
在系统的性能方面,B/S占有优势的是其灵活性。任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用B/S系统的终端。近年来,智能手机、智能家电、PDA等传统电脑之外的上网方式发展迅速,这在一定程度上为B/S结构增加了砝码。
不过,采用B/S结构,客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担,这使得服务器的负担很重。采用C/S结构时,客户端和服务器端都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力。而且,由于客户端使用浏览器,使得网上发布的信息必须是以HTML格式为主,其它格式文件多半是以附件的形式存放。而HTML格式文件(也就是Web页面)不便于编辑修改,给文件管理带来了许多不便。
系统的开发
最新的C/S结构是建立在中间件产品基础之上的,严格来讲这些产品还缺乏作为企业级应用平台的一些特性,难以扩展到互联网这样的环境上去,而且要求应用开发者自己去处理事务管理、消息队列、数据的复制和同步、通信安全等等系统级的问题。这对应用开发者提出了较高的要求,而且迫使应用开发者投入很多精力来解决应用程序以外的问题。这使得应用程序的维护、移植和互操作变得复杂,成了C/S的一大缺陷。如果客户端是在不同的操作系统上(比如Windows 2000以及不同版本的Unix),C/S结构的软件需要开发不同版本的客户端软件。如果产品经常需要更新换代,那么升级系统时候需要付出的高代价以及工作的低效率会在一定程度上制约企业的应用。
但是,与B/S结构相比,C/S技术发展历史更为“悠久”。从技术成熟度及软件设计、开发人员的掌握水平来看,C/S技术应是更成熟、更可靠的。和佳软件总裁陈佳认为:对于ERP软件而言,采用100%的B/S方式将造成系统响应速度慢、服务器开销大、通信带宽要求高、安全性差、总投资增加等问题。而且,对于复杂的应用,B/S方式目前尚没有合适方式进行开发。
系统的升级维护
C/S系统的各部分模块中有一部分改变,就要关联到其它模块的变动,使系统升级成本比较大。B/S与C/S处理模式相比,则大大简化了客户端,只要客户端机器能上网就可以。对于B/S而言,开发、维护等几乎所有工作也都集中在服务器端,当企业对网络应用进行升级时,只需更新服务器端的软件就可以,这减轻了系统维护与升级的成本。如果客户端的软件系统升级比较频繁,那么B/S架构的产品优势明显——无论用户规模有多大,所有的升级操作只需要针对服务器进行,这对人力、时间、费用的节省是相当惊人的。
在系统安全维护上,B/S则略显不足,B/S结构尤其得考虑数据的安全性和服务器的安全性,毕竟现在的网络安全系数并不高。以OA软件为例,B/S结构要实现办公协作过程中复杂的工作流控制与安全性控制,还有很多技术上的难点。因此,当前虽然出现了B/S结构的OA系统产品,但尚未大范围推广。
融合
——
取长补短
客观地分析C/S、B/S的优劣,规划系统的时候有的放矢地“趋利避害”,才能够搭建成合适的信息系统。我们接触的很多开发人员认为,在大型信息系统中采用B/S、C/S混合模式比较可行。在今年参与评测的一套软件系统中,开发人员就将C/S、B/S有机结合起来:需要对数据库进行频繁操作例如添加、修改资料的人员使用C/S客户端,这样客户端功能比较强、安全系数也高;领导层则使用B/S客户端进行数据的查询,这样客户端比较灵活,只要能上网即可以操作。如此处理,可充分发挥各种模式的优越性——避免了B/S结构在安全性、保密性和响应速度等方面的缺点以及C/S结构在维护和灵活性等方面的缺点。
背景知识:
两层结构C/S:如图1所示,它由两部分构成:前端是客户机,通常是PC;后端是服务器,运行数据库管理系统,提供数据库的查询和管理。
图1 两层结构C/S
三层结构C/S:这是伴随着中间件技术的成熟而兴起的,核心概念是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次(如图2所示)。三个层次的划分是从逻辑上来分的,具体的物理分法可以有多种组合。中间件作为构造三层结构应用系统的基础平台,提供了以下主要功能:负责客户机与服务器间、服务器间与服务器间的连接和通信;实现应用与数据库的高效连接;提供一个三层结构应用的开发、运行、部署和管理的平台。
B/S模式:B/S模式层次结构如图3所示。处于第一层的是客户端,处于第二层的是应用服务层,由一台或多台服务器组成,该层具有良好的可扩充性,可以随着应用的需要增加服务器的数目。处于第三层的是数据层,由数据库系统和遗留系统组成。
图3 B/S模式示意图
C/S
与
B/S
联系和选择使用
C/S与B/S的关系与管理需求是紧密联系的,在集团管理中有集中式管理与分布式管理的区别一样,集中式管理要求对数据实时监控,因为那些外地的分公司需实施进行远程操作数据的读写与传输,所以需要用B/S结构来保证数据操作实时性的(只要能上网就能登入操作).应用产品、系统产品、网络环境的不同,又将其细分为:
C/S结构应用方案;系统更新时客户端均须维护,对网络带宽要求较高,主要适合局域网运行.
B/S结构应用方案b/s:客户端免安装,客户端免维护,方便的查询,所有查询均可保存个性化方案和公用方案
集团管理分布管理就是用C/S结构的来构成个个区域(各分公司)数据存储与操作,而后在定期上报数据给总部汇总,这样操作的数据不需要B/S结构。
根据企业不同的要可选择不同的模式,不是把有的企业都需要B/S,也不是所有的C/S产品能满足所有的企业需求(如作全国分销的信息化系统绝对需要B/S结构的产品来实时监控个个分销公司和营销网点)子公司的地域和带宽进行判断,一般建议异地的子公司采用B/S,与集团总部在同一局域网内的子公司,并且是高带宽的子公司采用C/S。
注:
(1)3
层结构系统(
3-tier
结构)
全称 :
|
3-tier system
|
曾经,业务系统是以客户端与
服务器,2层结构为多数。在2层结构系统中,为实现业务的处理(Business Logic 商用逻辑)全部都记述在客户端上。当商用逻辑发生变更时,需要将所有的客户端
软件进行更新。
在3层结构系统中,将系统整体分为“客户层”(用户界面),“应用层”(商用逻辑),“数据层”(
数据库等3层。在客户端只留下用户界面,其余均装于
服务器上。客户端只受理用户的操作与表示应用层的处理结果。)
由于将
应用软件部分与客户端分离以及安装于
服务器上,在商用逻辑发生变更的情况,只须变更
服务器端的
应用软件便可,不会牵连到系统整体。而且,在存有大量数据的系统上,没必要通过
网络在客户端与
服务器端之间交换大量的数据。
在构筑3层结构系统的时候,全面采用web技术的情况比较多。在客户层常用web
浏览器以及flash,<<8(1)>>
插件等,在应用层常用Java application server等,在数据层常用Relation Database Management System(<<7(2)>>)等。
(2)×××:
(
Virtual Private Network
)虚拟专网
虚拟专网的英文(Virtual Private Network)缩写。指依靠ISP和其他NSP(网络服务提供者)在公用网络(如Internet、Frame Relay、ATM)建立专用的数据通信网络的技术。在虚拟网中,任意两个节点之间的连接并没有传统专网所需的端到端的物理链路.×××适用于大中型企业的总公司和各地分公司或分支机构的网络互联和企业同商业合作伙伴之间的网络互联。目前×××能实现的功能:企业员工及授权商业伙伴共享企业的商业信息;在网上进行信息及文件安全快速的交换;通过网络安全地发送电子邮件;通过网络实现无纸办公和无纸贸易。×××的访问方式多种多样,包括拨号模拟方式、 ISDN、DSL、专线、 IP路由器或线缆调制解调器。现在一般所说的×××更多指的是构建在公用IP网络上的专用网,我们也可称之为IP ×××(以IP为主要通信协议)。
×××
的优势
降低企业成本。当用×××进行远程访问时,只需付市内电话费,节约了昂贵的长途电话费;可以大大节约链路租用费、设备购置费以及网络维护费,减少企业的运营成本。除此之外,更能将Internet、企业内部网络(Intranet)、企业外部网络(Extranet)及远程接人功能(Remote Access)整合于同一条对外线路中,不需要像以前那样,同时管理Internet专线,长途数据专线等多种不同线路。
转载于:https://blog.51cto.com/mxjy1208/924816