一、C/S架构
- C/S架构及其背景
C/S架构是一种比较早的软件架构,主要应用于局域网内。在这之前经历了集中计算模式,随着计算机网络的进步与发展,尤其是可视化工具的应用,出现过两层C/S和三层C/S架构,不过一直很流行也比较经典的是我们所要研究的两层C/S架构。
C/S架构软件(即客户机/服务器模式)分为客户机和服务器两层:第一层是在客户机系统上结合了表示与业务逻辑,第二层是通过网络结合了数据库服务器。简单的说就是第一层是用户表示层,第二层是数据库层。客户端和服务器直接相连,这两个组成部分都承担着重要的角色。
- C/S架构的优点
a. 客户端和服务器直接相连。点对点的连接方式更安全,可以直接操作本地文本,比较方便。
b. 客户端可以处理一些逻辑事务。可以进行数据处理和数据存储,提供一定的帮助。
c. 客户端直接操作界面。
- C/S架构的缺点
a> C/S架构适用于局域网,对网速的要求比较高。
b> 客户端界面缺乏通用性,且当业务更改时就需要更改界面,重新编写。
c> 随着用户数量的增多,会出现通信拥堵、服务器响应速度慢等情况。
d> 系统的维护也比较麻烦。
- C/S架构的应用
C/S架构的软件是在是数不胜数,从办公的OFFICE,WPS,WINRAR到杀毒软件如金山,瑞金再到我们的娱乐软件,如播放器,QQ,微信等,无处不见C/S架构。
二、B/S架构
-
B/S架构及其背景
随着Internet和WWW的流行,以往的主机/终端和C/S都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。它是C/S架构的一种改进,可以说属于三层C/S架构。主要是利用了不断成熟的WWW浏览器技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
第一层是浏览器(即客户端)只有简单的输入输出功能,处理极少部分的事务逻辑。由于客户不需要安装客户端,只要有浏览器就能上网浏览,所以它面向的是大范围的用户,所以界面设计得比较简单,通用。
第二层是WEB服务器,扮演着信息传送的角色。当用户想要访问数据库时,就会首先向WEB服务器发送请求,WEB服务器统一请求后会向数据库服务器发送访问数据库的请求,这个请求是以SQL语句实现的。
第三层是数据库服务器,它存放着大量的数据。当数据库服务器收到了WEB服务器的请求后,会对SQL语句进行处理,并将返回的结果发送给WEB服务器,接下来,WEB服务器将收到的数据结果转换为HTML文本形式发送给浏览器。 -
B/S架构的优点
a> 浏览器和数据库服务器采用多对多的方式连接。因此适合在广域网里实现巨大的互联网,甚至是全球网,有着很强大的信息共享性。
b> 浏览器只处理一些简单的逻辑事务,负担小。
c> 数据都集中存放在数据库服务器,所以不存在数据不一致现象。
d> 随着服务器负载的增加,可以平滑地增加服务器的个数并建立集群服务器系统,然后在各个服务器之间做负载均衡。
e> B/S建立在广域网上,所以需要的网速要求不高。
f> 不需要安装客户端,只要能连上网,就能随时随地的浏览页面。
g> 能有效地保护数据平台和管理访问权限,确保服务器数据库的数据安全。
- B/S架构的缺点
a> 服务器承担着重要的责任,数据负荷较重。一旦发生服务器“崩溃”等问题,后果不堪设想。
b> 页面需要不断地动态刷新,当用户增多时,网速会变慢。
- B/S架构的应用
比如WEBQQ,从WEBQQ名称中的WEB就不难看出它属于B/S架构,是一种浏览器服务器结构。事实上也是如此,因为WEBQQ根本不需要安装客户端,只需要有浏览器就可以进行聊天交互了。