BS与CS架构的区别及优势劣势.docx
- 文档编号:5443852
- 上传时间:2022-12-16
- 格式:DOCX
- 页数:13
- 大小:28.98KB
BS与CS架构的区别及优势劣势.docx
《BS与CS架构的区别及优势劣势.docx》由会员分享,可在线阅读,更多相关《BS与CS架构的区别及优势劣势.docx(13页珍藏版)》请在冰豆网上搜索。
BS与CS架构的区别及优势劣势
B/S与C/S的区别及优势、劣势
一、什么是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最大的好处是客户端只需要Web浏览器即可以得到服务,而C/S通常还需要安装设置客户端,
B/S结构意味着可以忽略客户端的环境,而把所有注意力放在服务器端的开发上,升级方便,容易维护,不受距离限制,B/S的实现有很多种,目前的ASP,PHP,JSP,ASP.Net等流行的(脚本)语言都是B/S常用的东西,
b/s只是简化了客户端的程序,不需要开发客户端的应用程序,只需在客户端安装标准浏览器,
c/s则需要开发客户端,其实b/s也可以说是由c/s发展来的,是多层分布式Web处理系统,但一般的C/s可以天然的避免来自互联网的攻击。
b/s不受时间和空间的限制用浏览器就可以看
c/s是客户端/服务器模式,需要在一定的环境下进行浏览。
C/S可以自动的发送给你一条消息
B/S是网站除非不断刷新页面(另有其他方法,不单单刷新页面可以,但是要借助COM),是不能自动发送给你消息的;
B/S的安全性不好,
B/s限于网速,速度比较慢,而且报表打印实现较困难需要编写com组件
B/S系统由于受网络、安全等方面的制约,功能方面不可能做的很强,只能实现一些简单的浏览、查询和统计功能。
”
一、分销系统的系统架构要求
从软件系统架构的种类上来说,分销系统一般分为以下几种:
1、单机程序:
这个应该是简单的一种软件系统架构。
2、C/S架构:
C/S又称Client/Server或客户/服务器架构。
服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQLServer。
客户端需要安装专用的客户端软件。
C/S架构的优点是:
•交互性强。
在C/S中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。
B/S虽然由JavaScript、VBScript提供了一定的交互能力,但与C/S的一整套客户应用相比还是太有限了。
•提供了更安全的存取模式。
由于C/S是配对的点对点的结构模式,采用适用于局域网、安全性比较好的网络协议(例如:
NT的NetBEUI协议),安全性可以得到较好的保证。
而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据库服务器上管理密码的数据库来保证。
•降低网络通信量。
B/S采用了逻辑上的三层结构,而在物理上的网络结构仍然是原来的以太网或环形网。
这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用同一条网络线路。
而C/S只有两层结构,网络通信量只包括Client与Server之间的通信量。
所以,C/S处理大量信息的能力是B/S所无法比拟的。
•速度相对较快。
由于C/S在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S快。
使得C/S更利于处理大量数据。
C/S架构缺点主要有以下几个:
•只适用于局域网。
•这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。
•客户端需要安装专用的客户端软件。
首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。
特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。
•系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
•对客户端的操作系统一般也会有限制。
可能适应于Win98,但不能用于win2000或WindowsXP。
或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。
3、B/S架构:
B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer,服务器安装Oracle、Sybase、Informix或SQLServer等数据库。
浏览器通过WebServer同数据库进行数据交互。
B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。
只要有一台能上网的电脑就能使用,客户端零维护。
系统的扩展非常容易。
B/S架构的缺点就是所有C/S的优点,在前文已论述,不再重复。
4、三(N)层架构:
N层架构的四层是指PresentationTier(表示层,就是直接呈现在用户面前的界面)、WebServerTier(Web服务器层)、ApplicationServerTier(应用服务器层)和DataTier(数据层)。
N层架构的核心是提供可规模化特性,一方面是从服务负载上可规模化,能同时为极大规模的用户同时提供服务;另一方面是服务功能上的可规模化,可形成极大规模的软件群系统,各分系统可以共享信息、服务,形成企业级的信息高速公路。
N层可以分别放在各自不同的硬件系统上的,所以灵活性很高,能够适应客户机数目的增加和处理负荷的变动。
例如,在追加新业务处理时,可以相应增加装载功能层的服务器。
因此,系统规模越大这种形态的优点就越显著。
5、远程终端技术:
该种方式是根据C/S架构系统无法满足远程访问需求而存在的。
远程终端技术提供了通过作为终端仿真器工作的“瘦客户机”软件远程访问服务器桌面的能力。
终端服务只把该程序的用户界面传给客户机。
客户机然后返回键盘和鼠标单击动作,以便由服务器处理。
每个用户都只能登录并看到它们自己的会话,这些会话由服务器操作系统透明地进行管理,而且与任何其他客户机会话无关。
这种软件技术架构在小规模应用上尚可,但如果部署到大规模应用时,网络带宽、服务器响应能力、磁盘读取能力都会受到极大挑战。
从服装企业的行业特性上来说,包括鞋业、皮具、礼品等企业,在这里一般特指品牌连锁运营企业,企业的产品基于直营、分公司、加盟、专柜、批发等连锁经营方式,通过各级代理商、专卖店或者销售专柜实现最终销售,DRP系统就是要对企业的供应链进行全程管理,包括内部供应链和外部供应链的管理,涵盖了从生产厂家、物流配送、各级代理商分销,到专卖店零售的每一个环节,DRP系统要以供应链为核心实现各项业务功能。
DRP系统必须通过物流、商流、信息流、资金流对供应链进行管理和监控,实现供需匹配、动态适应、快速反应,从而降低库存、共享资源、降低成本、规避风险,为企业创造价值。
服装企业的上下游供应链关系可以用如下图表示:
C/S结构的优点
1、应用服务器运行数据负荷较轻。
最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。
二者可分别称为前台程序与后台程序。
运行数据库服务器程序的机器,也称为应用服务器。
一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。
2、数据的储存管理功能较为透明。
在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。
所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。
在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。
在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。
3、分布式数据管理方式,将数据同时分布在客户端和服务器端,它的优点在于可以更快地响应用户对一些常用数据的要求(如图)
4、远程数据管理方式示逻辑和业务逻辑放在客户机上,将数据逻辑放到服务器上。
客户端负责发送请求和接受处理结果以及业务处理,而大童的数据操作通过远程数据库访问的方式交给后台数据库服务器完成。
这样,使用户能得到高运行性能、高可靠性的后端服务和高表达能力的前端界面。
另外,这种模型在网络上只传送服务请求和处理结果,从而大大降低了网络流量、响应时间以及对网络带宽的要求,同时也提高了负载网络的有效负荷和吞吐量。
(如图)
5、传统的两层US模型的优点US结构的应用系统具有高性能、高效率、高可靠、开放、易扩充、可伸缩等特点,适应了当前飞速发展的信息社会的要求,为开发企业级的信息系统供了良好的环境。
N层架构的四层是指Presentation Tier(表示层,就是直接呈现在用户面前的界面)、Web Server Tier(Web服务器层)、 Application Server Tier(应用服务器层)和 Data Tier(数据层).
N层结构是相对于两层结构而言的。
传统的C/S计算多是基于两级模式,在这种模式中,所有的形式逻辑和业务逻辑均驻留在Client端,而Server则成为数据库服务器,负责各种数据的处理和维护。
因此Server变得很“瘦”,被称为“瘦服务器 (Thin Server)”。
与之相反,这种模式需要在客户端运行庞大的应用程序,这就是所谓的“胖客户机 (Fat Client)”。
6、N层架构的核心是提供可规模化特性,一方面是从服务负载上可规模化,能同时为极大规模的用户同时提供服务;另一方面是服务功能上的可规模化,可形成极大规模的软件群系统,各分系统可以共享信息、服务,形成企业级的信息高速公路。
N层可以分别放在各自不同的硬件系统上的,所以灵活性很高,能够适应客户机数目的增加和处理负荷的变动。
例如,在追加新业务处理时,可以相应增加装载功能层的服务器。
因此,系统规模越大这种形态的优点就越显著。
7、N层结构从逻辑上相互独立,某一层的变动通常不影响其它层,具有很高的可重用性。
另外,系统管理简单,可支持异种数据库,有很高的可用性。
界面层负责:
收集信息、将信息发送到逻辑层做处理、逻辑层接收处理结果、将结果显示......
逻辑层负责:
接收界面输入、与数据层交互执行已设计的业务、 操作(业务逻辑,系统服务等)、将处理结果发送到界面层 ......
数据层负责:
数据存储、 数据获取、数据维护、 数据完整性......
C/S结构的缺点
1、C/S架构的劣势是高昂的维护成本且投资大。
首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。
2、传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。
在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。
3、只适用于局域网。
而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。
这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。
4、客户端需要安装专用的客户端软件。
首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。
特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。
还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
5、对客户端的操作系统一般也会有限制。
可能适应于Win98,但不能用于win2000或WindowsXP。
或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。
6、数据安全性比较。
由于CS结构软件的数据分布特性,客户端所发生的火灾、盗抢、地震、病毒、黑客等都成了可怕的数据杀手。
另外,对于集团级的异地软件应用,CS结构的软件必须在各地安装多个服务器,并在多个服务器之间进行数据同步。
如此一来,每个数据点上的数据安全都影响了整个应用的数据安全。
所以,对于集团级的大型应用来讲,CS结构软件的安全性是令人无法接受的。
7、系统的性能随用户数的增加而下降。
C/S优于B/S的优点
C/S又称Client/Server或客户/服务器模式。
服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybas
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BS CS 架构 区别 优势 劣势