收藏 分享(赏)

B-S与C-S区别new.docx

上传人:dzzj200808 文档编号:2243284 上传时间:2018-09-07 格式:DOCX 页数:10 大小:28.77KB
下载 相关 举报
B-S与C-S区别new.docx_第1页
第1页 / 共10页
B-S与C-S区别new.docx_第2页
第2页 / 共10页
B-S与C-S区别new.docx_第3页
第3页 / 共10页
B-S与C-S区别new.docx_第4页
第4页 / 共10页
B-S与C-S区别new.docx_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、为生活所迫的网络之旅第 1 页 /共 10 页B/S 结构与 C/S 结构近日,朋友去参加面试,问及什么是 C/S 和 B/S,以及 C/S 和B/S 的区别,为了让更多的人了解这个熟悉而又陌生的概念,本人特总结如下:一、基本概念C/S ( Client/Server)结构,即客户机和服务器结构。它是软件系统体系结构,通过身份验证,充分利用两端硬件环境的优势,将任务合理分配到 Client 端和 Server 端来实现,实现网络功能。它降低了系统的通讯开销,提高网络传输的安全性。目前大多数应用软件系统都是 Client/Server 形式的两层结构,基于现在的软件应用系统正在向分布式的 Web

2、 应用发展,Web 和 Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。传统的 CS 体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是 Client 端还是 Server 端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S 结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,维护相对复杂,代价高,效率低。B/S( Browser/Server)

3、结构即浏览器和服务器结构。它是Internet 技术的兴起产物,是基于 C/S 结构理论上,改进的一种结为生活所迫的网络之旅第 2 页 /共 10 页构。在这种结构下,用户工作界面是浏览器,通浏览器来访问服务器。此结构在事务逻辑处理上,极少部分在前端(Browser)浏览器端实现,主要在服务器端(Server )实现,形成所谓三层 3-tier 结构。这样就简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术形势下,建立 B/S 结构的网络应用,并通过Internet/Intranet 模式下数据库应用,相对易于把握、成本也是较低的。它是一次性

4、到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如 LAN, WAN, Internet/Intranet 等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也相对比较安全。尤其在 JAVA 语言出现之后,B/S 架构管理软件更是方便、快捷、高效。二、软件体系机构发展阶段软件体系结构主要经历了三个阶段:集中式的结构阶段,客户机/ 服务器(Client/Server )结构阶段,浏览器/ 服务器(Browser/Server)结构阶段。1、集中式结构属于全封闭式系统,不同系统之间无法进行交流,信息共享能力差,系统扩展不方便,已经无法适应信息技术发展的需

5、求。 2、Client/Server 结构80 年代,数据库应用主要采用 C/S 两层结构。C/S 模式是一种非常成熟的应用体系结构,被广泛应用于各种管理系统中。这种结为生活所迫的网络之旅第 3 页 /共 10 页构在近十年的应用中得到了广泛发展,并获得很大成功。然而随着信息系统结构的规模和复杂度的日益扩大,传统 C/S 结构的局限性也逐渐暴露: 1)由于客户端和服务器端直接相连,服务器不得不消耗部分资源用于处理与客户端的连接工作。这样,当同时存在大量客户端数据请求时,服务器的系统资源可能在应付频繁的连接工作上消耗,从而不能很好地响应数据请求,客户端数据请求的堆积后果可能导致系统整体效率的大幅

6、降低甚至崩溃。 2)主从式结构使得唯一在线的数据库服务器成为系统可靠性的极大隐患,如果数据库服务器停止工作,整个系统将瘫痪。3)客户端应用程序的分发工作的繁琐程度令人难以接受。系统开发完毕后,必须为每台客户机安装客户端程序的执行文件以及相关动态连接库文件(*.DLL),程序初始化文件(*.INI)等文件。另外,还必须为每台客户机的 ODBC 或 BDE 进行配置。不仅如此,如果系统升级,上述过程得重复一次。 4)在存储过程的调用中,所有处理过程都在数据库层进行,只是将最终结果返回客户端。这种结构的业务逻辑需采用专用语言开发,很难移植到其他的数据库上去。3、Browser/Server 结构B/

7、S 结构,是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构,克服了上述由 C/S 结构造成的缺陷。 B/S 结构中,事务处理逻辑部分从客户机的任务中分离出来,使客户机不再为生活所迫的网络之旅第 4 页 /共 10 页负责处理复杂计算和数据访问等关键事务,只负责显示部分,由服务器来担负更多的工作。用户仅通过浏览器就可向服务器发出请求,服务器处理用户的请求,并将结果返回给用户。 采用基于 B/S 结构的多层结构,不仅简单,而且降低了系统的维护工作量,提高了系统的开放性,尤其是以中间件为基础的 B/S多层结构,其核心概念是利用中间件技术将应用的业务逻辑、表示逻辑和数据分

8、为多个不同的处理层,不但具备了系统稳定、安全和处理能力高等特性,同时拥有开放式系统成本低、可扩展性强、开发周期短等优点。另外,浏览器软件有着统一的用户界面、统一的语言格式、统一的传输协议,用户界面简单易学,终端用户几乎无需任何培训,系统管理简单,可以支持异构数据库,有很高的可用性。 三、C/S 与 B/S 的区别 1、硬件环境不同:C/S 一般建立在专用的网络上,小范围里的网络环境,类似局域网之间通过专门服务器提供连接和数据交换服务。B/S 建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比 C/S 更强的适应范围,一般只要有操作系统和浏览器就行。2、对安

9、全要求不同 为生活所迫的网络之旅第 5 页 /共 10 页C/S 一般面向相对固定的用户群,对信息安全的控制能力很强,尤其现在的 VPN 技术。一般高度机密的信息系统采用 C/S 结构适宜。B/S 建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群,一般机密性弱的信息系统采用 B/S 结构适宜。3、对程序架构不同 C/S 程序注重流程,对权限多层次校验,对系统运行速度考虑较少。B/S 注重访问速度,数据安全性相对弱。它是建立在需要更加优化的基础之上,是比 C/S 有更高的要求。 B/S 结构的程序架构是发展的趋势,它必然会更加成熟。 4、系统维护不同 C/S 程序由于整体性,必须整

10、体考察,处理出现的问题以及系统升级比较繁琐。B/S 构件组成方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。 5、处理问题不同 C/S 程序可以处理用户面固定,并且在相同区域,安全要求高的需求,与操作系统相关,应该都是相同的系统。B/S 建立在广域网上,面向不同的用户群,分散地域,不需要额外安装其他客户端软件,多种操作系统平台均可使用。 6、用户接口不同 为生活所迫的网络之旅第 6 页 /共 10 页C/S 多是建立在 Window 平台上,表现方法有限,对程序员普遍要求较高。B/S 建立在浏览器上,有更加丰富和生动的表现方式与用户交流, 并

11、且大部分难度减低,降低开发成本。四、C/S 和 B/S 的优势与劣势C/S 和 B/S 是当今的两大主流技术。C/S 是美国 Borland 公司最早研发,B/S 是美国微软公司研发。目前,这两项技术以被世界各国所掌握,国内公司以 C/S 和 B/S 技术开发出产品也很多。这两种技术都有自己一定的市场份额和客户群,各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群体。这两种结构各自的优势与劣势又是什么呢?1、C/S 架构软件的优势与劣势1)应用服务器运行数据负荷较轻。最简单的 C/S 体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前

12、台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。2)数据的储存管理功能较为透明。为生活所迫的网络之旅第 7 页 /共 10 页在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中

13、不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“ 透明 ”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“ 瘦小” ,麻烦的事情都交给了服务器和网络。在 C/S 体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。3)C/S 架构的劣势是高昂的维护成本且投资大。首先,采用 C/S 架构,要选择适当的数据库平台来实现数据库数据的真正“ 统一” ,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才

14、能有效实现,有这样一些问题,如果需要建立“实时 ”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。其次,传统的 C/S 结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经为生活所迫的网络之旅第 8 页 /共 10 页不适应工作需要。在 JAVA 这样的跨平台语言出现之后,B/S 架构更是猛烈冲击 C/S,并对其形成威胁和挑战。2、B/S 架构软件的优势与劣势1)维护和升级方式简单。目前,软件系

15、统的改进和升级越来越频繁,B/S 架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但 B/S 架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦” ,而服务器越来越“胖” 是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用

16、的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦” 客户机,“ 胖”服务器。2)成本降低,选择更多。大家都知道 windows 在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上 windows 并不是处于绝对的统治地位。现在的趋势是凡使用 B/S 架构的应用管理软件,只需安装在 Linux 服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用为生活所迫的网络之旅第 9 页 /共 10 页windows 作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux 操作系统快速发展起来,Linux 除了操作系统是免

17、费的以外,连数据库也是免费的,这种选择非常盛行。比如说很多人每天上“网易”(原文为新浪)网,只要安装了浏览器就可以了,并不需要了解“网易”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用 windows 操作系统,但用户的电脑本身安装的大部分是 windows 操作系统。3)应用服务器运行数据负荷较重。由于 B/S 架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过 WWW 浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服

18、务器运行数据负荷较重,一旦发生服务器“ 崩溃 ”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。3、B/S 结构相对于 C/S 结构的优势1)开发和维护成本 。 C/S 结构开发和维护成本较高。对不同客户端要开发不同的程序,编程工作量大。如果应用程序要进行安装、修改和升级,均需要在所有的客户机上进行,复杂又麻烦。对于 B/S 结构,只需在客户端安装通用的浏览器,所有的维护与升级工作都是在服务器上执行的,不需对客户端进行任何改变,因而大大降低了开发和维护的成本。 为生活所迫的网络之旅第 10 页 /共 10 页2)客户端负载。C/S 结构的客户端具有显示与处理数据的功能,负

19、载过重。应用系统的功能越来越复杂,客户端的应用程序也变得越来越庞大,客户端也越来越“胖”,而不断地提高客户机的配置,又加重了投资的成本。B/S 结构的客户端把事务处理逻辑部分分给了服务器端,不再负责处理复杂计算和数据访问等关键事务,只需要进行显示,使客户机变得很“瘦”。 3)采用的标准。C/S 结构所采用的标准只在内部统一,其应用通常是专用的。B/S 结构所采用的标准式开放的、非专用的,是经过标准化组织所确定的,保证了其应用的通用性和跨平台性。4)灵活性。C/S 结构系统模块中每一部分的变动均要关联到其他模块的变动 ,使系统很难升级,灵活性差。B/S 多层结构中层与层之间的相互独立,任何一层的改变不影响其他层的功能,系统的改进变得相对容易,而且可以用不同厂家的产品来组成性能更佳的系统。5)移植性。C/S 结构移植困难,不同开发工具开发的应用程序,一般来说互不兼容,难以移植到其他平台上运行。对于 B/S 结构,在客户端安装的是通用浏览器,不存在移植性问题。6)户界面风格。C/S 结构的用户界面是由客户端所装软件决定,用户界面各不相同。而 B/S 结构只需在客户端安装通用的浏览器就可以访问程序,浏览器的界面统一友好,易于使用。以上资料,部分观点源于互联网,望斟酌参考!

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

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报