C/S和B/S是当今网络开发架构的两大主流技术,前者由美国Borland公司最早研发,后者则由美国Microsoft公司主导研发。
C/S(Client/Server)结构即客户机/服务器结构,将任务合理分配到Client端和Server端来实现,服务器通常采用高性能的PC、工作站或小型机,采用大型数据库系统,如Oracle、Sybase、Informix或SQL Server。客户端需要安装专用的客户端软件。利用两端硬件环境的优势,降低系统的通信开销。但是这种方式只适用于局域网,远程访问需要专门的技术,要专门设计来处理分布式的数据;客户端需要安装专门的客户端软件,维护和升级成本较高,对客户端的操作系统也有限制。
B/S(Browser/Server)结构即浏览器和服务器结构,是随着Internet技术的兴起,对C/S结构的一种改进的结构。客户机上只需安装浏览器(Browser),服务器安装数据库,浏览器通过服务器同数据库进行数据交互。在这种结构下,用户工作界面通过WWW浏览器来实现,仅少部分事务逻辑在前端(Browser)实现,主要事务逻辑在服务器端(Server)实现,大大简化了客户端载荷,减轻了系统维护与升级的成本和工作量,降低了总体成本。可以在任何能上网的地方进行操作而不用安装任何专门的软件,客户端零维护,系统扩展容易,访问和操作跨平台,数据保护和管理容易实现。特别是在Java这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
图1.C/S架构
图2.B/S架构
表1对C/S和B/S进行比较
架构 | C/S | B/S |
原理 | 将任务分配到Client端和Server端来实现 | 用户界面通过浏览器来实现,事务逻辑在Server端实现 |
应用举例 | QQ聊天,阅读器,播放器 | 网络购物,网上银行,博客日志 |
服务器负荷 | 较轻 | 较重 |
数据的存储管理 | 透明 | 不透明 |
投资与维护成本 | 较大 | 较小 |
升级方式 | 较麻烦 | 较简单 |
硬件环境 | 专用网 | 广域网 |
对信息安全的控制能力 | 很强 | 较弱 |
软件重用性 | 不好 | 好 |
操作系统独立性 | 不好 | 好 |
用户接口通用性 | Window平台 | 浏览器 |
交互性 | 较弱 | 强 |
表1