首页 理论教育JavaWeb应用开发:B/S结构的优势与特点

JavaWeb应用开发:B/S结构的优势与特点

【摘要】:图1.2C/S 结构2.B/S 结构B/S 结构,即Browser/Server结构,就是只安装维护一个服务器,而客户端采用浏览器运行软件。显然B/S 结构应用程序相对于传统的C/S 结构应用程序是一个非常大的进步。B/S 结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体成本低。从以上分析可以看出,B/S 结构和C/S 结构各有优势。

近年来,随着网络技术不断地发展,促进了很多应用系统的体系结构从C/S 结构向更加灵活的B/S 多级分布结构演变,使得软件系统的网络体系结构跨入一个新阶段。认识这些结构的特征,并根据实际情况进行系统的选型,对于成功开发一个基于网络的应用程序是非常重要的。

1.C/S 结构

C/S 结构,即Client/Server(客户机/服务器)结构。此结构把数据库内容放在远程服务器上,而在客户机上安装相应软件。C/S 软件一般采用两层结构,其分布结构如图1.2 所示。它由两部分构成:前端是客户机,客户机安装的软件结合了表示与业务逻辑,接受用户的请求,并向服务器端发送请求;后端是服务器端,一般包含服务器端软件和数据库,服务器端软件接收到客户端请求,并根据客户端请求访问数据库,在数据库返回结果之后将获取的数据响应到客户端,客户端将数据进行计算并将结果呈现给用户。另外,还要提供完善的安全保护及对数据的完整性处理等操作,并允许多个客户同时访问同一个数据库。在这种结构中,服务器的硬件必须具备足够的处理能力,才能满足各客户的要求。例如常用的腾讯QQ、迅雷以及网吧计费管理系统IKeeper 等软件都是属于C/S 结构的。

图1.2 C/S 结构

2.B/S 结构

B/S 结构,即Browser/Server(浏览器/服务器)结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browser)运行软件。它是随着Internet 技术的兴起,对C/S 结构的一种变化和改进。主要利用了不断成熟的WWW 浏览器技术,结合多种Script 语言(如Javascript)和ActiveX 技术,是一种全新的软件系统构造技术,描述了B/S 结构,如图1.3 所示。

(www.chuimin.cn)

图1.3 B/S 结构

B/S 结构是基于HTTP 协议的,客户端浏览器发送HTTP 请求,通过Internet 访问Web服务器,Web 服务器根据客户端请求访问数据库,并将数据库返回的结果进行处理之后生成客户端响应,然后使用HTTP 协议,通过Internet 将响应内容返回给客户端浏览器,浏览器将解析响应内容并显示给客户。基于B/S 结构的应用多如牛毛,如频繁访问的百度、Google、网易新浪、搜狐以及Web 版的迅雷等网站。

在B/S 体系结构系统中,数据请求、加工、结果返回以及动态网页生成,对数据库的访问和应用程序的执行等工作全部由Web 服务器完成。随着Windows 将浏览器技术植入操作系统内部,这种结构已成为当今应用软件的首选体系结构。显然B/S 结构应用程序相对于传统的C/S 结构应用程序是一个非常大的进步。

3.B/S 与C/S 的区别

C/S 结构在技术上很成熟,它的主要特点是交互性强,具有安全的存取模式,网络通信量低,响应速度快,利于处理大量数据。但是该结构的程序是针对性开发,变更不够灵活,维护和管理的难度较大。通常只局限于小型局域网,不利于扩展。并且,由于该结构的每台客户机都需要安装相应的客户端程序,分布功能弱且兼容性差,不能实现快速部署安装和配置,因此缺少通用性,具有较大的局限性,对技术人员的专业水平要求较高。

B/S 结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体成本低。但数据安全性问题、对服务器要求过高、数据传输速度慢、软件的个性化特点明显降低,这些缺点是有目共睹的,难以实现传统模式下的特殊功能要求。例如通过浏览器进行大量的数据输入或进行报表的应答、专用性打印输出都比较困难和不便。此外,实现复杂的应用构造有较大的困难。虽然可以用ActiveX、Java 等技术开发较为复杂的应用,但是相对于发展已非常成熟的C/S 的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术工具供使用。

从以上分析可以看出,B/S 结构和C/S 结构各有优势。目前国内外大部分软件要么已经是B/S 结构的,要么正在经历从C/S 到B/S 结构的转变。