客户机/服务器结构 · C/S

📌 一句话理解

C/S结构就像“餐厅点餐”:客户机是顾客(点菜、吃饭),服务器是厨房(做菜、备料),顾客只负责“要什么”,厨房只负责“做什么”。


🍽️ 用“餐厅”来理解C/S结构

┌─────────────────────────────────────────────────────────────────┐
│                    C/S结构 = 餐厅点餐                            │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   ┌─────────────────────────────────────────────────────────┐   │
│   │                      餐厅                                │   │
│   │                                                         │   │
│   │   ┌─────────────┐                      ┌─────────────┐  │   │
│   │   │   顾客      │                      │   厨房      │  │   │
│   │   │  (客户机)   │  ──── 点餐 ────►    │  (服务器)   │  │   │
│   │   │             │                      │             │  │   │
│   │   │  坐在餐桌   │  ◄─── 上菜 ────     │  做菜备料   │  │   │
│   │   │  只管吃饭   │                      │  负责制作   │  │   │
│   │   └─────────────┘                      └─────────────┘  │   │
│   │                                                         │   │
│   └─────────────────────────────────────────────────────────┘   │
│                                                                 │
│   C/S结构:                                                    │
│   • 客户机(顾客):只管请求和展示,不做复杂处理                   │
│   • 服务器(厨房):集中处理请求,存储核心数据                     │
│   • 分工明确,各司其职                                          │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

🖥️ C/S结构是什么?

C/S结构(Client/Server,客户机/服务器结构) 是以数据库服务器为中心、以客户机为网络基础、在信息系统软件支持下的两层结构模型。

┌─────────────────────────────────────────────────────────────────┐
│                    C/S结构示意                                   │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   ┌─────────────────────────────────────────────────────────┐   │
│   │                    网络                                 │   │
│   │                                                         │   │
│   │   ┌─────────┐    ┌─────────┐    ┌─────────┐           │   │
│   │   │ 客户机1 │    │ 客户机2 │    │ 客户机3 │           │   │
│   │   │ (前台)  │    │ (前台)  │    │ (前台)  │           │   │
│   │   └────┬────┘    └────┬────┘    └────┬────┘           │   │
│   │        │              │              │                 │   │
│   │        └──────────────┼──────────────┘                 │   │
│   │                       │                                │   │
│   │                  ┌────┴────┐                          │   │
│   │                  │ 服务器  │                          │   │
│   │                  │(数据库) │                          │   │
│   │                  └─────────┘                          │   │
│   │                                                         │   │
│   └─────────────────────────────────────────────────────────┘   │
│                                                                 │
│   客户机:发送请求、展示结果(安装专用软件)                        │
│   服务器:处理请求、存储数据(安装DBMS、服务器软件)                │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

🔧 C/S结构的两部分

角色作用软件要求餐厅类比
客户机 (Client)用户操作的终端,发送请求,展示结果需要安装专用客户端软件顾客(点菜、吃饭)
服务器 (Server)处理请求,存储数据,提供服务安装服务器软件+数据库厨房(做菜、备料)

🏢 生活中的C/S结构应用

应用客户机服务器说明
商场收银系统收银台电脑后台服务器收银机扫码,服务器记录销售数据
银行柜台系统柜员电脑银行主机柜员办业务,主机处理账户
学校选课系统机房电脑选课服务器学生选课,服务器记录选课结果
医院门诊系统医生电脑医院服务器医生开药,服务器更新病历

✅ C/S结构的优点

优点说明
安全性高数据集中存储在服务器,便于管理
性能强服务器专门处理数据,客户机只负责界面
功能丰富可以开发复杂的客户端功能
响应快大量计算在服务器完成,客户机负担小

❌ C/S结构的缺点

缺点说明
维护麻烦每台客户机都要安装软件,升级要逐台更新
成本高需要购买专用服务器和客户端软件授权
平台受限客户机必须安装特定操作系统才能运行
部署不便用户不能随时随地使用,必须到指定机器上

🆚 C/S vs B/S(浏览器/服务器)

对比维度C/S 结构B/S 结构
客户端需要安装专用软件只需浏览器
维护每台电脑都要维护只需维护服务器
升级逐台更新客户端服务器更新即可
使用必须在安装软件的电脑上任何有浏览器的设备
开发针对特定平台开发跨平台,一次开发
安全较高依赖网络安全
适用场景功能复杂、安全性高的系统访问范围广、易维护的系统

💡 小提示:C/S适合“内部专用系统”(如银行柜台),B/S适合“面向大众的系统”(如网上购物)。


🏠 你家有C/S结构吗?

┌─────────────────────────────────────────────────────────────────┐
│                    家里的C/S结构                                 │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   ┌─────────────────────────────────────────────────────────┐   │
│   │  手机App(客户机)                                        │   │
│   │      ↓                                                   │   │
│   │  微信发消息 → 腾讯服务器(处理)→ 对方收到                  │   │
│   │      ↓                                                   │   │
│   │  刷抖音视频 → 字节服务器(存储)→ 视频播放                  │   │
│   └─────────────────────────────────────────────────────────┘   │
│                                                                 │
│   手机上的很多App都是C/S结构!                                    │
│   你手机是“客户机”,App公司的服务器是“服务器”                     │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

🔗 相关术语


📚 教材链接

  • 教材位置:第四章 4.1.1 信息系统的体系结构及其工作过程

✅ 自测小问题

  1. C/S结构的全称是什么?中文是什么意思?
  2. 在C/S结构中,客户机和服务器各负责什么?
  3. C/S结构的一个主要缺点是什么?
  4. 你用过哪些C/S结构的应用?
点击查看答案
  1. Client/Server,中文:客户机/服务器结构
  2. 客户机:发送请求、展示结果;服务器:处理请求、存储数据
  3. 维护麻烦:每台客户机都要安装和更新软件
  4. 学校机房软件、银行ATM机、手机App等(根据实际情况回答)