0012. CS 架构 vs. 文件共享架构
1. 📝 概述
- “C/S、B/S 架构” vs. “文件共享架构”
对比维度 | 文件共享架构 | 客户端/服务器架构 |
---|---|---|
数据传输 | 下载整个文件或表 | 仅传输请求与结果 |
运算位置 | 客户端本地处理 | 服务端处理 |
网络负载 | 高(频繁传输大量数据) | 低(仅传输必要信息) |
性能表现 | 通常较差(依赖客户端性能) | 通常较好(利用服务器高性能) |
适用场景 | 小型单机系统 | 中大型分布式系统 |
- C/S、B/S 架构在网络层面的优势
优势点 | 说明 |
---|---|
集中处理逻辑 | 所有业务逻辑在服务器完成,避免重复计算 |
降低带宽压力 | 只传输指令和结果,而非原始数据 |
提高安全性 | 数据集中在服务器,防止非法访问 |
易于维护升级 | 升级只需改服务器,不影响客户端 |
2. 🤔 为什么说 C/S、B/S 架构能减少网络传输量?
- 答:C/S 架构减少了网络传输量,是因为它把数据处理放在服务器上,客户端只传输查询请求和返回结果,而不是整个数据集。只传输必要的有用结果,这样就避免了每次查询都传输大量无用数据。
2.1. 客户端只发送“请求”,不传输整个数据集
- 在 C/S 架构下:
- 客户端通常只是发送一个查询请求(如 SQL 查询语句)。
- 然后由服务器去执行这个请求,把 符合要求的结果返回给客户端。
- 这就是一种“客户端请求、服务器响应”的模式。
- 示例:
sql
SELECT * FROM books WHERE author = 'Tdahuyou';
1
- 客户端只发送这行 SQL 请求(几十个字符),而不是把整个
books
表的数据都下载到本地再筛选。
2.2. 服务器端处理数据后再返回结果
- 数据库服务器会先在服务端执行查询、过滤、排序、分组等操作。
- 只把最终结果(如匹配条件的几条记录)返回给客户端。
2.3. 对比早期的“文件共享”方式
- 在没有 C/S 架构的时代,很多系统是基于“文件共享”的模式。
- 用户需要把整个数据库文件复制到本地进行查询。
- 即使只需要一条记录,也得下载整个表。
- 大大增加了网络流量和响应时间。
- 每次操作都要传输大量数据 → 网络拥堵、性能差。
- 而 C/S 架构解决了这个问题。