C/S与B/S的区别

1.前言

一直在说C/S和B/S架构,但到底二者之间的区别是什么,之前一直没有去探究,今天有空,在网上搜索查看,了解到一些内容,进行整理一下

2.C/S架构

C/S:C/S是client/server的缩写,一种典型的两层架构,即客户端服务器架构。该模式是建立在局域网基础上的,同时客户端需要安装客户端软件才能够使用(其客户端包含一个或多个在用户的电脑上运行的程序,因此客户群稳定)。服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信(聊天软件是否就是这种呢)。主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据。因为客户端要负责绝大多数的业务逻辑和UI展示,又称为胖客户端。

优缺点

优点:

1  C/S架构的界面和操作可以很丰富。
2  安全性能可以很容易保证,实现多层认证也不难。
3  由于只有一层交互,因此响应速度较快。

缺点:

1 适用面窄,通常用于局域网中。
2  用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。
3  维护成本高,发生一次升级,则所有客户端的程序都需要改变。

3.B/S架构

B/S:B/S是borwser/server的缩写,即浏览器服务器结构。该模式是建立在广域网基础上的,Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现,Browser客户端,WebApp服务器端和DB端构成所谓的三层架构。B/S架构的系统无须特别安装,只有Web浏览器即可,因此其客户群广泛。B/S中显示逻辑交给了Web浏览器,事务处理逻辑在放在了WebApp上,这样就避免了庞大的胖客户端,减少了客户端的压力。因为客户端包含的逻辑很少,因此也被成为瘦客户端。

优缺点

1客户端无需安装,有Web浏览器即可。
2BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。
3BS架构无需升级多个客户端,升级服务器即可。

缺点:

1在跨浏览器上,BS架构不尽如人意。
2表现要达到CS程序的程度需要花费不少精力。
3在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。
4客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。(在Ajax风行后此问题得到了一定程度的缓解)

4.二者区别

1.硬件环境

(1)C/S 用户固定,一般只应用于局域网(专用网络上)中,局域网之间再通过专门服务器提供连接和数据交换服务。要求拥有相同的操作系统,如果对于不同操作系统还要相应开发不同的版本,并且对于计算机电脑配置要求也较高。

(2)B/S 要求有操作系统和浏览器就行,与操作系统平台无关(可以实现跨平台),对客户端的计算机电脑配置要求较低。比C/S有更强的适应范围

2.安全要求不同

(1)C/S一般面向固定的用户群,对信息安全的控制能力很强。 一般高度机密的信息系统采用C/S 结构适宜。

(2)B/S建立在广域网之上, 对安全的控制能力相对弱,面向是不可知的用户群,可以通过B/S发布部分可公开信息.

3.程序架构

(1)C/S 程序可以更加注重流程,,可以对权限多层次校验,,对系统运行速度可以较少考虑

(2)B/S 对安全以及访问速度的多重的考虑,,建立在需要更加优化的基础之上 B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk 2000 Exchange 2000等,全面支持网络的构件搭建的系统.。SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟。 

4.软件重用

(1)C/S不可避免的考虑整体性,构件的重用性不如在B/S要求下的构件的重用性好。

(2)B/S要求构件相对独立的功能,能够相对较好的重用。 

5.系统维护

(1)系统维护在是软件生存周期中,开销大。重要C/S 程序由于整体性,,必须整体考察, 处理出现的问题以及系统升级。升级难,可能是再做一个全新的系统。

(2)B/S程序由构件组成,方便构件个别的更换,实现系统的无缝升级,系统维护开销减到最小。

6.用户接口

(1)C/S 多是建立的Window平台上,表现方法有限

(2)B/S 建立在浏览器上,,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,减低开发成本。

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值