C/S和B/S结构

1、

C/S(Client/Server):客户端--服务器结构

因为客户端要负责绝大多数的业务逻辑和UI展示,又称为胖客户端

C/S 架构是一种典型的两层架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端 ,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。

B/S(Browser/Server):**浏览器----服务器结构,**是目前应用系统的发展方向。BS是伴随着Internet技术的兴起,对C/S架构的改进,为了区别于传统的C/S 模式,特意称为B/S模式。

通过W3浏览器来进入工作界面,极少部分事务逻辑在前端(Browser)实现,主要事务逻辑在服务器端(Server)实现,形成三层(3-tier)结构。这样使得客户端电脑负荷大大简化(因此被称为瘦客户端)

CS与BS架构对比:响应速度与成本考量-CSDN博客

现在 C/S 和 B/S 仍然都在用。 你常听到的"前后端分离""微服务",描述的是系统的其他方面,可以和 C/S、B/S 同时成立。

一个常见的系统可以这样设计:

这些概念分别表示:

概念 主要说什么 例子
B/S 用户通过浏览器访问 你填写培养计划的网站
C/S 用户通过专门的客户端访问 安装到手机上的联网 App
前后端分离 前端实现页面和交互,后端提供业务接口,两边交换数据 网页请求后端,后端返回数据,网页更新显示
单体架构 后端的多个业务模块放在一个应用里部署 用户管理、课程管理、成绩管理放在同一个 Java 项目中
微服务架构 后端按业务拆成多个可独立部署的服务 用户服务、课程服务、成绩服务分别部署

浏览器可以通过 JavaScript 请求接口、动态更新页面;后端既可以返回数据,也可以直接生成网页。MDN:客户端与服务器交互 单体和微服务则需要结合系统复杂度选择,微服务会增加部署和维护成本。微软:常见 Web 应用架构

"C/S 固定两层、B/S 固定三层"的说法过于绝对。 两者都可以采用多层设计,而且"软件分几层"和"部署几台服务器"也不是一回事。微软:多层架构说明

相关推荐
AI_Lab012 小时前
宝塔用了两年,有没有必要换成轻量方案?
linux·运维·服务器
众壹新能源科技2 小时前
逆变器直流开关柜温度监测与预防:红外巡检发现3个120度热点
运维·人工智能·自动化
by209992 小时前
Linux GDB 调试与 CGDB 使用
linux·运维·服务器·经验分享
小羊没烦恼!2 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
小Ti客栈3 小时前
Netty 零拷贝原理与实战
运维·服务器·网络
ai_coder_ai3 小时前
AIOps 智能运维架构设计及其应用
运维
静以修身zzz3 小时前
计算云服务
运维·网络·云计算
万联WANFLOW3 小时前
异地组网速度忽快忽慢到底怎么回事?直连与中继的判断方法和处理步骤
运维·网络·网络协议·p2p
SDWAN_Cheap3 小时前
物理服务器跟云服务器有什么区别,使用于什么场景
运维·服务器