知识卡片

数据库应用系统从二层到三层架构演进及C/S与B/S的区别

普通读书笔记卡

内容

数据库应用系统最早是二层架构:应用程序直接对接数据库服务器。随着业务逻辑 越来越复杂,二层架构把展示、业务逻辑和数据访问都堆在应用程序一侧,逐渐 演化成三层架构:应用客户端(面向用户、处理操作请求)、应用服务器(承载 业务逻辑,需要时再调用数据库)、数据库服务器(专职数据存取,对外统一用 SQL接口响应)——这次拆分的动因是让”处理用户交互”和”实现业务逻辑”分离 成两个可以独立扩展、独立维护的层,而不是让业务逻辑跟着展示层耦合在一起。 在服务方式上,三层架构又可细分为C/S(客户端-服务器)和B/S(浏览器-服务器) 两种:C/S用专门开发的客户端程序处理用户交互(如手机App),B/S用浏览器 处理用户交互(如小程序),两者的服务器端结构相同,区别只在于客户端是否 需要单独安装——这个区别决定了分发和更新方式:C/S的客户端升级需要用户 重新安装或更新App,B/S只需服务端更新,用户刷新页面即可用上新版本,这也 是移动互联网时代B/S类应用(小程序、Web应用)逐渐增多的一个现实动因。

参考来源

- 位置:《数据库原理(微课版)》第1章《绪论》1.4节"数据库应用系统" (源文件:_epub-src/index_split_001.html) - 结论依据:原文说明"随着应用逻辑越来越复杂,软件开发开始使用三层架构…… 应用客户端面向用户,处理操作请求,调用应用服务器完成用户请求,处理业务 逻辑",并进一步区分"C/S架构的软件使用客户端来处理用户的操作请求……B/S 架构的软件使用浏览器处理用户的操作请求",因此可以推出二层到三层的演进 动因及C/S与B/S的核心区别。 - 原始内容:随着应用逻辑越来越复杂,软件开发开始使用三层架构……C/S架构的 软件使用客户端来处理用户的操作请求……B/S架构的软件使用浏览器处理用户的 操作请求。