开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第十六天,点击查看活动详情
一、B/S架构和C/S架构的定义
1、B/S(Browser-Server)浏览器和服务器架构。(比如百度、腾讯、京东等网站) 包含寄户端浏览器、web应用服务器、数据库服务器的软件系统。用户只需要一个浏览器就可以访问服务。系统更新时候,只需要更新服 务端,不需要更新浏览器。
2、C/S(Client-Server)客户机和服务器结构。(比如微信、支付宝,网易云app等软件)。
c/S结构与B/S最显著的区别是需要安装客户端,通过客户端程序来访问应用系统。所以系统更新时,既要更新服务端,也要更新客户 端。
二、B/S与C/S区别(不同点)
网络不同
B/S架构:主要用于外网,可通过广域网进行访问(也可用于内网) ; C/S架构:主要用于内网,建立在专用的网络上(比如局域网),小范围访问。
安全性不同
B/S架构:安全性较低,容易受到他人的网络入侵,因为B/S建立在广域网之上,对 安全的控制能力相对弱,面向是不可知的用户群;
C/S架构:安全性较高,封闭式网络不容易受到他人网络入侵,因为C/S一般面向 相对固定的用户群,对信息安全的控制能力很强。
三、优点和缺点
优势:
1.C/S体系结构的接口和操作可以非常丰富。
2.BS架构可以直接放置在互联网上,通过一定的权限,实现控制多客户端访问的的目的,交互性强。
缺点:
1.维护成本高,一次升级,所有客户端应用程序都需要更改。
2.客户端服务器交互是请求响应模式,通常需要刷新页面,这是不愿意看到客户的。
小结:
我认为BS是CS的一种特例,两者并不是对立的。BS和CSS最大的区别有两个:
1、客户端服务端交互不同。BS一定是请求-响应式,客户端发送请求,服务端完成业务逻 辑,返回响应结果;CS则不一定是这种模式,可以是服务端自发受到事件、外部消息触发业 务逻辑处理,后将结果推送到客户端。
2、业务逻辑处理分布不同。BS的业务逻辑绝大部分都在服务端,客户端只负责收集数据和显 示,是瘦客户端;CS允许客户端有一定的业务逻辑处理,能够更快速的响应用户的一些操 作。