【web】数据库应用系统设计体系结构

数据库系统架构

1.集中式结构

概念:所有的程序,包括DBMS、应用程序、与用户终端进行通信的软件等全部集中在一台称为主机的计算机上运行,且所有的数据及其数据处理工作也都在主机中运行。

2.两层客户机/服务器架构

    两层C/S架构将数据库应用系统的计算机分为客户机和服务器两类,系统的功能在客户机和服务器之间划分,形成一种客户机请求服务,服务器提供服务的应用系统结构。
两层C/S的特点与优点
特点:两层C/S架构是“肥”客户机/“瘦”服务器结构。
客户机需要配置好几层软件。
如操作系统、网络协议软件、客户机软件及应用程序等
服务器只是单纯的数据库服务器。
优点
相对于集中式结构,两层C/S架构把程序的功能分离,使得客户端开发集中于数据的显示和分析,数据库服务器则集中于数据的管理,这样不必在每一个新的应用开发中重新对数据库进行编码。

缺点

  • 维护费用较高。客户端要安装庞大而复杂的应用程序,当网络用户的规模达到一定数量之后,系统的维护量急剧增加,维护应用系统变得十分困难。
    系统可靠性降低。一个客户机/服务器系统是由各自独立开发、制造和管理的各种硬件和软件的混合体,其内在的可靠性不如集中式结构的大型机或小型机。
    资源利用率不高。用户在本地硬盘 装入大量的软件,但使用的只是其中很少一部分(一般少于10%)。在一个拥有众多“胖”客户机的环境中,这无疑时巨大的浪费。
  • 系统缺乏灵活性。客户机/服务器需要对每一应用独立地开发应用程序,消费了大量的资源,且“胖”客户机的计算模式仍然满足不了日益增长的应用需要。

3.三层数据库应用系统

把数据库应用系统分为逻辑上相对独立的三层,数据库系统的功能分别由三层实现:

  • 数据层负责数据管理和事务处理两个功能。主要由一个或多个数据库管理系统实现。
  • 功能层由客户机中负责业务规则处理的代码分离而来,用一个专门的应用服务器支持,负责业务逻辑功能。改变业务处理规则时,不对表示层产生影响。
  • 表示层仍配置在客户机中 ,实现用户与应用间的对话,如检查用户从键盘等输入的数据,显示应用输出的数据,提供表达逻辑功能。变更用户接口时,只需改写显示控制和数据检查程序,不影响其他两层。检查的内容也只限于数据的形式和值的范围,不包括有关业务本身的处理逻辑。

优点
系统灵活性高。把三个层次分别放在各自不同的硬件(计算机)系统上能够适应客户机数目的增加和处理负荷的变动。
降低了系统分析设计的难度,能够使系统结构清晰、分工明确,又利用后期的维护和升级。
缺点
降低了系统的性能。
增加了系统实现的难度。
组件的生命周期管理,安全管理,多用户访问的事务管理,组件之间的连接和通信,应用的可靠性和可伸缩性。
【注】关于伸缩性,指的是当多个用户访问系统时,系统对每个用户访问请求处理时间。比如说10个用户访问系统,系统处理要花10s。当用户访问增多时候,系统处理不会变的很慢。

这里写图片描述

猜你喜欢

转载自blog.csdn.net/alearn_/article/details/80526306