一、概念说明
C/S(Client/Server(客服机/服务器))架构:客户端/服务器架构。通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,需要安装客服端才可进行管理操作。
B/S(Browser/Server(浏览器/服务器))架构:是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。由于客户端基本上没有专门的应用程序,应用程序基本上都在服务器端。由于客户端没有程序,应用程序的升级和维护都可以在服务器端完成,升级维护方便。
二、两者的区别与联系
C/S 架构即“客户端-服务器” 架构。这里的“客户端”可以是有 GUI (图形用户界面)的定制软件,也可以是浏览器,甚至可以是通过 SSH 访问服务器的命令行脚本。只要是客户端通过访问服务器直接调取计算或者存储资源的,统统都是 C/S 架构,不能单纯的从APP或者网站进行区别,即所谓的 B/S架构其实是 C/S 架构的一种特殊的实现形式。
网络上从硬件、网络、维护、数据安全等方面对两者的区别分析如下:
1.网络环境:
Client/Server是建立在局域网的基础上的.Browser/Server是建立在广域网的基础上的.
2.硬件环境不同:
C/S 一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务.
B/S 建立在广域网之上的,不必是专门的网络硬件环境,例与电话上网,租用设备.信息自己管理.有比C/S更强的适应范围,一般只要有操作系统和浏览器就行
对安全要求不同
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等信息、流向的变化,更象交易中心
个人理解:
BS架构:支持很多人访问(甚至包括陌生人,游客等),收到需求时直接从服务器获取数据回应,不需要信息的实时性,只在请求发生时进行响应,但数据需要长期有效性。B/S最大优势为客户端免维护,适用于用户群庞大,或客户需求经长发生变化的情况.
CS架构:信息有着一对一,点对点的转发,单线传输,实时转发的特性的,服务器只做转发功能,大量的工作在客户端,可以减轻服务器端压力,如果用户的需求特别复杂,用C/S.
C/S,B/S的区别
原文:https://www.cnblogs.com/xjtsh/p/10493113.html