PowerBuilder的分布式计算技术及其应用

PowerBuilder的分布式计算技术及其应用 浙江大学计算机系 梁荣华 浙江大学计算机系 史济建 杭州电子工业学院计算机系 周其力

摘要: 本文分析了客户机/服务器的二级体系结构缺点与不足,介绍了客户机/服务器的分布式计算体系结构的优点,重点论述了分布式计算体系结构在PowerBuider6中的实现,并给出了具体的应用实例,最后给出了结论。

关键词:客户机/服务器 分布式计算 二级体系结构 三级体系结构 客户应用程序 服务器应用程序

引言
90年代,人们开发MIS系统大都采用客户机/服务器结构,客户机/服务器结构既是硬件结构又是软件结构。即数据放在服务器上,程序在客户机上。进行数据访问时,由客户机提出请求(一般是SQL语句),服务器执行并给出结果。客户机/服务器对于优化了网络,提高了系统的利用率。客户机/服务器体系结构的发展经历了从二级体系结构模式到三级体系结构模式。

1 二级体系结构模式

传统的客户机/服务器的模式是二级体系结构(Two-tier model)模式。结构图如图1

PowerBuilder的分布式计算技术及其应用

用户界面与逻辑事务驻留在客户计算机上,将大部分的数据存放在数据库中,对数据的操作如查询、修改等由客户机提出请求,数据库服务器完成并返回给客户机结果,这种体系结构虽然可以系统的性能,但它们具有明显的缺点:

缺乏安全性
在客户机上存取敏感性数据时,由于逻辑事务放在服务器中,所以用户可以访问逻辑事务的核心部分,这使得未授权用户容易侵入系统,有安全漏洞。

重的客户机负荷
随着客户机要求处理的事务的数目增多,系统的任务日益繁重,导致系统的吞吐量下降,使得客户机不能满足系统的要求,当然可以买一台更大的机器来替代旧的客户机器,但在经济方面不如买一台机器来分担客户机的某些任务。

鉴于此,人们提出了三级体系结构模式(见图2)。

2分布式计算体系结构

在该模式中,用户界面保存在客户端,事务逻辑保存在应用服务器中,数据保存在数据库服务器中。客户机只负责提供用户界面,当需要进行数据访问时或复杂计算时,客户机向应用服务器发出请求,应用服务器响应客户机的请求,完成复杂的计算或者向数据库服务器发送SQL语句由数据库服务器完成相应的数据操作,最后由应用服务器将结果返回给客户机。该模式也称三级体系结构模式,PowerBuilder对于该模式是支持的。需要说明的是,三级体系结构模式的三级是指逻辑上的三级(即用户界面、事务逻辑、数据)而不是物理的三级。(具体见图二)

对于二级模式,分布式计算体系结构提供了解决方式,分布式计算技术通过将用户界面与事务逻辑分开,这使得未授权用户很难侵入系统,保证了系统的安全性;同时由于客户机只处理用户界面,大量的事务处理在服务器应用程序实现,大大减轻了客户机的负荷,使瘦客户成为可能。

二、分布式应用的体系结构在PowerBuidler中的实现

分布式PowerBuilder 应用程序典型使用两个应用程序,即服务器应用程序和客户应用程序,分别在两台机器上实现。

服务器与客户应用程序一起实现事务应用,客户应用程序处理用户界面,与用户交互,服务器应用程序提供给客户应用程序提供必要的数据包,应用程序对客户应用程序透明。结构图见图3。

尽管服务应用通常提供数据包给客户应用程序,但服务器应用程序本身也可以作客户应用程序功能,换言之,服务器应用程序能作为客户应用程序与另一服务器应用程序连结,这时,这个服务应用程序作为客户应用程序与另一应用程序的中介等。

2.1服务器应用程序

服务器应用程序提供了两个主要的组件:传送对象(Transport object)、远程对象(Remote object)。


传送对象使之能为服务器应用程序收到客户连接并处理客户请求。