Java Web轻量级开发全体验
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 程序网络计算模式

随着网络技术的不断发展,单机的软件程序已难以满足人们网络计算的需求,各种各样的网络计算模式应运而生。其中C/S与B/S模式是网络计算模式中运用得最多的两种计算模式。

1.1.1 C/S模式

C/S(Client/Server,客户机/服务器)方式的网络计算模式,其工作分别由服务器和客户机完成。

服务器负责管理数据库的访问,为多个客户程序管理数据,并对数据库进行检索和排序,此外还要对客户机/服务器网络结构中的数据库安全层加锁,进行保护。

客户机负责与用户的交互,收集用户信息,通过网络向服务器请求对诸如数据库、电子表格或文档等信息的处理工作。

可见,在C/S模式中,资源明显不对等,是一种“胖客户机”或“瘦服务器”结构。

最简单的C/S模式数据库应用由两部分组成,即客户应用程序和数据库服务器程序。两者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,称为应用服务器,服务器程序启动后,就随时等待响应客户程序发来的请求;客户程序在客户使用的计算机上运行,客户使用的计算机称之为客户机。当需要对数据库中的数据进行访问时,客户程序就自动寻找服务器程序,并向其发出请求,服务器程序根据预定的规则进行应答,送回结果。应用的形式如图1-1所示。

图1-1 简单的C/S模式应用

1.1.2 B/S模式

B/S(Browser/Server,浏览器/服务器)方式的网络结构,在客户端统一采用如Netscape和IE一类的浏览器,通过Web浏览器向Web服务器提出请求,由Web服务器对数据库进行操作,并将结果传回客户端。

在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需的信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只须配置少量的客户端软件即可。但是服务器将担负更多的工作,对数据库的访问和应用程序的执行都将在服务器上完成。即当浏览器发出请求后,其数据请求、加工、返回结果以及动态网页生成等工作全部由Web服务器完成。

这种三层体系结构如图1-2所示。

图1-2 B/S模式的三层应用

1.1.3 两种模式的比较分析

1.开发和维护成本

C/S开发和维护成本较高。对不同客户端需要开发不同的程序,且应用程序的安装、修改和升级,均需要在所有的客户机上进行。而B/S,客户端只需有通用的浏览器,所有的维护与升级工作都是在服务器上执行,无须对客户端进行任何改变,因而大大降低了开发和维护的成本。

2.客户端负载

C/S的客户端具有显示与处理数据的功能,负载重。随着应用系统的功能越来越复杂,客户端的应用程序也变得越来越庞大。B/S的客户端把事务处理逻辑部分给了服务器,客户端只需进行显示即可,俗称为“瘦”客户机。

3.可移植性

C/S移植困难,因为不同开发工具开发的应用程序,一般情况下互不兼容,难以移植到其他平台上运行。对于B/S,在客户端安装的是通用浏览器,不存在移植性问题。

4.用户界面

C/S用户的界面是由客户端所安装的软件决定的,因此用户界面各不相同;而B/S通过通用的浏览器访问应用程序,其浏览器的界面统一,使用时类似于浏览网页。

5.安全性

C/S适用于专人使用的系统,可以通过严格的管理派发软件,适用于安全性要求较高的专用应用软件;而B/S适用于交互性要求较多,使用人数较多,安全性要求不是很高的应用环境。

综上所述,这两种开发模式都是网络环境下的开发模式,B/S相对于C/S具有更多的优势,现如今大量的应用开始转移到应用B/S的模式,许多软件公司争相开发B/S版本的软件。由于Internet逐步走进人们的日常生活当中,电子商务进一步应用的需求,客户简便化的使用要求等对加速推广使用B/S模式起到了推波助澜的作用。