论文部分内容阅读
进入90年代,随着分布式客户/服务器计算技术和面向对象技术的迅速发展和相互融合,分布对象技术脱颖而出,并逐渐成为分布异构环境下应用集成和系统开发的主流技术和重要计算范型。 分布对象技术的通信模式一般是同步、紧耦合的,然而随着工作流、电子商务以及移动计算等应用的出现和迅速发展,分布对象技术的传统通信模式受到严峻挑战,建立具有异步、松耦合特性的通信模式成为当前分布对象技术的一个研究热点。 本文的主要工作围绕基于分布对象的异步、松耦合通信技术的研究展开,其基本思想是在保留CORBA原有特性如互操作性、可重用性及可移植性等的基础上对CORBA进行扩展,将消息中间件的消息传递和控制技术无缝地引入到CORBA中。为此,本文提出一种新型的基于分布对象的异步消息模型,并重点论述了该模型所提供的异步调用、存储-转发、对象迁移、消息组播等基本通信问题。基于该模型,本文还研究了构建复杂分布式系统时所面临的消息寻径、消息可靠传递、性能保障等高级技术问题。本文的主要工作包括: 1.针对异步、松耦合通信模式的需求,提出一个基于分布对象的异步消息模型的形式定义。该模型采用事件驱动的方式管理远程调用,支持异步回调和异步轮询两种异步调用模式;模型采用路由代理作为消息的“存储-转发”机制,保障了松耦合应用的时间无关调用的需求;模型扩展了传统CORBA的寻址方式,定义了逻辑对象地址,能够支持松耦合应用的对象迁移,提高了对象定位的透明性;模型还定义了对象组地址,支持消息组播,实现了“一对多”的通信模式。 2.研究了一种静态的消息寻径算法(IRP算法)和一种动态的消息寻径算法(L-S算法)。IRP算法仅根据服务器提供的路径构件进行寻径,简单实用,但难以适应分布系统环境的动态变化。L-S算法(即链路状态算法)采用表驱动的方式进行消息寻径,能够自主适应分布系统环境的动态变化,保障消息的正确寻径。 3.在消息传递的可靠性研究中,论文把消息的可靠传递分为两个阶段:第一阶段是client把消息可靠地发送给目标对象的缺省路由代理,第二阶段是目标对象的缺省路由代理把消息进一步可靠发送给最终目标对象。论文研究了第一阶段中消息的存储-转发机制以及消息的冗余路径方法,以及第二阶段的基于对象组的可靠性算法,包括主动复制算法和主副本算法。进而,论文从全局角度出发,研究了因异步消息模型而引发的消息排序问题,提出了基于序号的消息可靠排序算法。 4.从两个角度研究了分布对象异步消息模型的性能问题。一个是基于异步消息模型进一步构建了对象缓冲模型,通过在本地建立远程对象的副本,提高对象的访问效率,研究并解决了其中一系列的关键问题,提出了对象复制算法、对象迁移算法、副本一致性维护算法等。另一个是针对用户对性能需求的动态变化,研究了模型的动态可扩展性,重点 国防科学技术大学研究生院学位论文解决了扩展策略的实施时机和对象组扩展规模的问题。 5,研究了在一个具体的遵循COKBA标准的分布对象框架内,实现一个精简的、基本的异步消息模型所需要的有关核心实现技术。具体地,论文以分布式软件平台StarBus为基础,研究和实现了一个基于CORBA标准的消息回调服务(MCBS),其关键实现技术包括:回调对象的设计、报文重组协议、事件处理的轮转法策略、单线程ORB的回调时机以及相关的性能优化策略等。 6.给出了四类应用模板的解决方案,包括:基于窗口的分布式客户应用、大量重叠远程调用的管理、松祸合应用以及具有client兔色的server应用。它们所涵盖的具体案例涉及股票交易、会议投票系统、企业监控系统、电子汇款系统、企业间电子商务(B一t。一B)、工作流、移动计算、洪水预警系统等。 最后,总结了本文取得的主要研究成果,并概述了进一步的研究方向。