论文部分内容阅读
随着网络技术的发展和计算机应用的深入,分布式系统已经成为各个行业主流的软件系统。分布式系统具有诸多优点,但是在开发时面临诸多的挑战,这些挑战包括:如何使用户方便地访问异构平台的远程资源、如何提高系统的可靠性和容错能力、如何实现分布式系统的开放性、如何提高软件结构的可扩展性和代码的可复用性、如何解决分布式系统的跨平台开发问题以及如何对分布式系统中的资源进行有效管理等等。分布式系统只有在设计和实现中真正解决这些问题,巨大优势才能得以发挥。将中间件技术应用于分布式系统开发当中,是解决上述问题的有效途径。将中间件按照特定的体系结构融合到系统当中,可以屏蔽分布式平台的差异性,并且使得上层应用程序的设计和实现更加简单。CORBA是中间件技术中的优秀代表。本文研究和分析了CORBA的技术特点和相关概念,并最终将它应用于具体的分布式通信管理系统,完成了该系统中的核心模块,并对这些核心模块的实现进行了研究,还对应用效果进行了测试和分析。本文首先分析了各种主流中间件技术,通过比较说明了CORBA技术的优点,列举出了分布式系统开发的各种挑战,初步提出使用CORBA等相关技术来应对这些挑战的可行性。接下来本文介绍了课题所涉及的相关理论技术:介绍了CORBA的相关概念和技术特点;介绍了ACE的基本知识并分析了其对CORBA编程的辅助作用;介绍了框架的相关概念并分析了其与设计模式的关系。最后,本文详细分析和研究了该分布式通信管理系统当中核心模块的设计、实现和应用,包括CORBA框架、可靠性保障层和资源管理模块。其中,CORBA框架通过对标准CORBA接口的封装,屏蔽了异构平台资源访问的细节,实现了访问透明性,并通过引入设计模式和框架思想,提高了软件结构的可扩展性和代码的可复用性;可靠性保障层在CORBA框架的基础上通过设计和实现一套功能重构策略和文件部署算法,为分布式系统提供了容错功能,很好地解决了故障透明性问题;资源管理模块也是基于CORBA框架,通过设计实现了一个分布式资源管理模型,提供了对分布式资源简单有效的管理功能。另外,所有核心模块在使用到线程操作、UDP通信和定时器等与操作系统密切相关的API时,统一使用了ACE的接口,提高了代码的可移植性,解决了分布式系统的跨平台开发问题;可靠性保证层和资源管理模块使用OMG的IDL语言完成面向对象的接口设计,保证了分布式系统的开放性。