主要区别: Client/Server是建立在局域网的基础上的.Browser/Server是建立在广域网的基础上的. 

1.硬件环境不同

C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务. 

B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例如电话上网, 租用设备. 信息管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行

2.对安全要求不同 

C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息. 

B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群.

3.对程序架构不同 

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

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

4.软件重用不同 

C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好. 

B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.

5.系统维护不同 

系统维护在是软件生存周期中,开销大, -------重要 

C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统 

B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.

6.处理问题不同 

C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 操作系统相关. 应该都是相同的系统 

B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小.

7.用户接口不同 

C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高 

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

8.信息流不同 

C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低 

B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更象交易中心

 

C/S架构的优缺点:
*优点:
1.客户端因为是独立设计,所以可以实现个性化
2.因为客户端是需要进行安装的,可以不需要重复安装和加载
3.因为客户端是独立开发的,所以有能力对客户端进行安全设计
4.如果遇到不同的操作系统,需要为不同的操作系统各开发一套客户端
*缺点:
1.因为客户端是不需要重复安装,所以用户可以不更新与升级,增加了维护成本。
2.因为需要开发客户端和服务器两套程序,所以开发成本会增加
B/S架构的优缺点:
*优点:
1.因为B/S架构具备通用性,所以开发成本较低。
2.因为不需要安装客户端,所以客户端不需要进行升级,只需要更新后台代码即可实现所有客户端的更新。
3.因为B/S架构多用WEB网页进行开发,所以增、删功能也非常容易,只需要修改网页即可完成
*缺点:
1.耗流量,每次都要加载全部的内容(不过有缓存可以降低流量损耗)
2.因为没有独立的客户端,所以无法实现个性化(通过账号体系可以实现)
3.因为没有独立设计客户端,所以客户端难以实现安全控制(HTTPS、控件)。
4.难以实现特殊的操作(删本地文件),所以所有的杀毒软件都是C/S架构的。
B/S架构更多的时候是使用了HTTP协议、而C/S架构更多的时候使用的WinSocket协议(TCP、UDP)