C/S 架构与 B/S 架构:定义、特点及应用场景解析

2024-05-29
来源:网络整理

C/S架构定义

书面解释是/(客户端/服务器)结构,这是一种众所周知的软件系统架构,通过合理地将任务分配到端与端之间,减少系统的通讯开销,需要安装客户端才能进行管理操作。

客户端和服务器上的程序有所不同,用户的程序主要在客户端,服务器主要提供数据管理、数据共享、数据和系统维护、并发控制等功能,客户端程序主要完成用户的具体业务。

其开发相对容易,操作简单,但应用程序的升级和客户端程序的维护比较困难。

电脑和手机上所有需要安装的应用程序都是C/S架构

B/S架构定义

书面解释:B/S(浏览器/服务器模式)是随着技术的兴起而对C/S结构的一种改进。在这种结构下,软件应用的业务逻辑完全在应用服务器端实现,用户操作完全在Web服务器中实现,客户端只需要浏览器即可处理业务。是一种全新的软件系统构建技术。这种结构已经成为当今应用软件的首选架构。B/S结构软件在初期一般只需要一次性投入成本,对于集团来说,有利于软件项目控制,避免IT黑洞。但是C/S结构软件则不同,随着应用范围的扩大,投入会不断增加。

其实B/S就是网页,不管你打开什么网站都是B/S结构,在手机浏览器里打开的网站也是B/S结构。

IT黑洞:当你的软件开发的周期特别长,而软件开发出来之后,市场上的用户对它不再有需求的时候,你就陷入了IT黑洞。

web:代表网站,PC端访问的网页

app:手机或者电脑上的应用程序

wap(俗称m站、迷你网站):通过手机浏览器访问的网页

电脑系统或者手机系统属于C/S,因为需要安装。浏览器是C/S,在浏览器里打开的网页属于B/S,因为浏览器需要安装,在浏览器里点击就可以直接看网页。B/S是基于C/S的。小程序属于B/S,微信属于C/S

为什么要区分web和wap呢?

如果不区分的话,如果手机上没有移动适配版本的网站,那么在手机上打开的时候,和在电脑上打开的时候看起来是一样的,在手机上可能看不到完整的,看不到格式排版等等,所以为了适应手机小屏幕的环境,我们必须要区分它们,这样就要为它开发一套单独的代码,还要有一套专门针对手机网站的wap代码,同样的一个网址,在电脑上打开是一个样子,在手机上打开又是另外一个样子。

为什么同一个网址,在不同环境下打开,显示不一样呢?是因为重定向(302)的缘故,只要识别到是在手机上打开,就会直接跳转到另外一个网址。

如果你正在开发一个软件,是C/S更快还是B/S更快?

B/S的研发成本一定低,速度快。

如果是C/S移动端,至少要开发两套代码,一套是系统,一套是iOS系统,两套代码互不兼容,所以需要两个开发团队,做两次测试,系统上的bug,iOS上不一定有,系统上不存在的bug,iOS上也不一定有,代码都是独立的。

B/S的维护成本也较低。

比如一个官网从1.0升级到2.0,那么1.0这个层次就看不见了,只需要维护2.0这个层次;而当手机微信更新到5.0的时候,4.0这个层次也需要维护,因为有的人选择不更新了,既然有的人在用,那肯定还要继续维护。所以C/S架构的软件更新之后,老版本是必须要维护的,而B/S架构的软件更新之后就不需要维护老版本了。

小程序开发需要什么环境_程序开发需要什么配置_程序开发环境是什么

安全

C/S比B/S更安全。

如果是B/S架构的话,如果发生黑客攻击,攻击形式是渗透,通过服务端接口篡改代码,修改源程序,窃取数据,删除数据库等。

C/S无法被穿透,是通过安装来进行攻击,比如安装一个带有病毒的软件,在安装过程中将病毒带入计算机中。

有些软件C/S、B/S不能发挥全部功能

例如:百度地图、高德地图的导航功能只适合手机使用,并不适用于电脑。

抖音,一种碎片时间的消磨方式

付款,你用电脑买东西吗?

B/S与C/S的比较

B/S对服务器的要求较高,而C/S对服务器的要求稍弱

跟服务器相关的东西肯定会在性能上做测试,比如对服务器进行压力测试或者负载测试。用户每次登录网站都会对服务器产生影响。但是C/S就不一样了,打开手机APP对服务器的压力就小很多。手机访问APP对硬件是有压力的,会耗费手机本身的内存和CPU,而不会耗费服务器的内存和CPU,只有在触发接口的时候才会对服务器产生压力。

缓存和下载的关系

你在手机上打开一个视频,第一次打开需要加载,但是第二次打开就直接不用加载了,这就是临时存储,也就是缓存。

下载内容保存在手机本地,可以在手机相册中打开,占用手机内存

缓存和

ctrl++ 清除网页历史记录

:记录你在每个网站上做过的事,记录一个人的行为习惯

淘宝推荐“你的收藏”,你浏览的抖音视频都是你感兴趣的内容。

单独记录登录后产生的数据,不登录则没有数据。

你做的每一件事都会被存储在里面,里面的数据会被存储在大数据里

分享