内容发布更新时间 : 2024/11/17 0:19:10星期一 下面是文章的全部内容请认真阅读。
《中大型数据库应用》课程讲义
1.N层式客户机服务器体系
1. 1. 传统的数据库处理方式
是架构在Main Frame上面的,每一个终端机并没有自己的中央处理器(CPU)和存储器(硬盘等),所以每一个终端机只能做数据的输入与输出,所有的数据处理都必须集中在同一台主机上,所以主机的负担很重。
2.C/S体系:
为了解决传统的Main Frame结构中主机负担过重以及价格昂贵等问题;产生了新一代的两层式客户机/服务器体系(Client/Server)。早期的PowerBuilder就是采用两层式客户机/服务器体系设计应用程序的。
整个系统可以分成两个功能层:
第一层包括了软件的应用层和表现层,驻留于客户端。使用PowerBuilder开发出的应用程序主要用于第一层,运行于客户端。
第二层包含数据库和服务器的组件。一个基于SQL的数据库管理系统一般安装在服务器端,应用软件在服务器端进行的操作主要是数据存储和检索。
在两层模式中会有一些应用逻辑以存储过程和触发器的形式存储在服务器端,以优化服务器的性能,但绝大多数的应用逻辑都是放在客户端的。 缺点:
● 性能问题。在大型企业或系统中,应用程序生成的事务量是巨大的。同时,在一些对反应时间要求较高的系统中,性能问题更加突出;
● 应用程序发布问题。将商业规则放在三层结构的中间层可以解决应用程序发布时存在的问题,保证在主要使用某一版本的商业规则时所有用户都使用这一版本。 3.三层式客户机/服务器体系
C/S缺点:程序管理与维护上的困难。产生了新一代的多层式客户机/服务器体系。
3层应用:在新的多层式客户机/服务器体系中,将原本在客户端上面一些有关事务逻辑处理的部分另外独立出来,放置在另一台主机
上执行,称之为应用服务器。每一个客户端的应用程序并不直接连接数据库主机,而是先连接到应用服务器,然后再由应用服务器去连接数据库主机。
三层模式将系统分为三个不同的“层”:表现层、商业逻辑层和数据访问层。表现层处理用户界面;数据访问层是数据源;在通常状况下指数据库:商业逻辑层是新增加的一层,指程序中作出智能决策和事务逻辑处理的那一部分功能。把运行在商业逻辑层的软件编写成一个为客户机所调用、能够完成一定逻辑功能的专用软件,同数据库服务器相区别,我们称之为应用服务器。 4.分布式计算(n层应用)
在一个网络中,可以有着多个不同功能的应用服务器,为客户机或其他的应用服务器提供专业服务。这样,三层结构就发展成为N层,这就是所谓的分布式计算方式。 分布式计算的技术优势,包括:
? ? 逻辑封装性:这是分布式模式中最具诱惑力的特征,这种模式的根基在于将以往全部由客户机完成的事务逻辑中的一部分从客户端分开。当需要动态改变一个应用软件的商业逻辑规则时,只要改变一个应用服务器的程序即可,而不需要更改客户端用户界面,这样就无须中断用户,也无须为最终用户重新发放新的界面软件或亲自上门为其安装调试并重新培训用户,因此,提高了工作效率。这种多层模式对于需经常、快速改变应用程序的行业很有帮助。
? ? 瘦客户机 这种类型的应用在运行时最显著的特点就是减少甚至消除了传统的两层体系结构中,以客户机为中心或称为“胖客户”模式,减轻了客户机的功能负担,使其消肿成为“瘦客户”。“胖客户”是用户感到十分苫恼的事情,用户为使用更强功能的软件,就必须付出高昂的维护费用,不断地为个人电脑的软硬件设备升级。
? ? 性能 性能的提高是三层模式最终被用户采用的主要原因。将复杂的应用和商业逻辑分离出来由专门的一台应用服务器来处理;既可以提高应用的执行速度,也可以减少网络调用的通信量。不过这种性能提高是有一定代价的。这就是开发时要将应用逻辑分割为客户端逻辑和服务器端逻辑,这就增加了设计的复杂性。
? ? 安全性管理 在分布式计算模式中,由于所有的商业逻辑都驻留在服务器端,信息管理部门就可以十分方便地监控服务器的运行情况,很容易地控制访问服务器以及与服务器应用打交道人员的数量。这可以大大简化管理员对系统的管理和
维护的工作量,并确保系统的可靠运行。
分布式事务处理最广泛和最成功的应用当数Internet/Intranet技术了,浏览器/Web服务器/数据库服务器就分别对应于客户端/应用服务器/数据库服务器三层体系结构中的三个环节,Internet就是一个典型的三层体系结构的应用。 2.PowerBuilder 特点
1.PowerBuilder:一种图形化的快速应用开发(RAD)工具被广泛用于数据库应用开发。
2.PowerBuilder:是用来进行客户/服务器开发的专业工具
从6.0版本开始,PowerBuilder支持三层或是n层结构。对一个应用程序进行分割以后,将代码分为不同的逻辑组件,具体分配取决于系统方案及当前的商业要求,这种结构的优点包括四个方面: ● 可重复使用。可在不同的应用程序间共享;
● 性能提升。将计算机负担从客户机转至服务器,开发者可充分利用计算资源,使应用程序的执行达到最佳状态,由此获得更好的性能;
● 易于管理。可将大型、复杂的应用程序划分为易于管理的模块;
● 易于维护。由于组件集中,便于重复使用,适应商业需求的变化。
使用PowerBuilder可以快速开发出客户/服务器模式及分布式数据库应用程序。
3。PowerBuilder提供对面向对象编程的全面支持,并内置多种对象类,其中以DataWindow对象最为著名,可以方便的访问数据库。PowerBuilder还提供了对多种数据源的简便连接,具有高度的开放性和灵活性。
4.具有强大的、易于使用的第四代编程语言PowerScript.
PowerScript是PowerBuilder使用的面向对象的编程语言,它是由命令、语句、函数,还有用户自定义的对象或类及SQL语句组成的,它是一种极为灵活的高级结构化语言。它具有易学易用的特点。 5. PowerBuilder与网络
PowerBuilder的早期版本4.0和5.0非常适用于Client/Server结构的应用系统,但
是随着应用系统结构的发展,对于目前的Web应用结构和瘦客户端的应用模式来说具 有一定的局限性。