论文部分内容阅读
进程间通信是所有分布式系统的核心功能。随着Internet及其应用的飞速发展,分布式应用系统间的通信面临巨大的挑战。尤其是随着现代管理的多部门协作和领域间协作越来越广泛,越来越多的应用系统需要跨Internet协作。中间件的管道功能为分布式应用系统跨越多种操作系统进行通信提供统一的环境。然而,基于中间件构建的应用系统很难实现跨异构平台的互操作,而且多数不能穿越防火墙。本文重点研究了基于RPC实现跨平台通信的技术。目前,Web服务技术主要解决异构平台应用系统的集成和互操作问题。SOAP是Web服务技术使用的消息协议。本文以Axis为例详细阐述了SOAP的实现技术。但是,SOAP的结构化标记复杂。SOAP封装后,数据量明显增大。因而,Web服务技术不适用于应用系统间大数据量的数据交换。当前,出现了另一种跨平台的通信协议HBWSP(Hessian Binary Web Service Protocol)。HBWSP规定了数据的编码标准和对RPC的表示。它把本地格式数据编码为二进制数据,并且具有简单的结构化标记。HBWSP封装后的数据增量明显小于SOAP封装后的数据增量。HBWSP比SOAP更适用于分布式应用系统间大数据量的数据交换。本文提出了一种基于JAVA语言实现HBWSP的方案。最后,本文通过中央广播电视大学远程开放教育教务管理系统的实例阐述了跨平台通信技术在分布式应用系统中的应用。中央广播电视大学远程开放教育教务管理系统是一个典型的分布式应用系统,需要实现异地、异构平台应用系统之间的数据交换。同时考虑到网络的通信状况,教务管理系统的数据交换解决方案采用非持久同步和持久异步两种方式。非持久同步方式采用HBWSP;持久异步方式把数据保存成二进制文件后进行数据交换。该解决方案可以实现GB级数据的交换。