论文部分内容阅读
随着技术的进步和业务需求的不断复杂,客观上要求软件架构技术能够支持一些新的特性,包括异构模块动态部署、增量式模块开发、服务动态管理、敏捷性开发等。
本文在分析Java对模块化支持的不足之处的基础上,介绍了OSGI的模块化思想,以及OSGI在构建插件体系结构方面的优势。分析了传统的企业应用集成解决方案与SOA架构实现技术We.Service的优缺点。结合OSGI与SOA的优点,以OSGI插件体系思想为基础,提出一个即插即用面向服务的模块化框架模型。该框架将服务请求实体层与资源实体层逻辑分离开来,服务注册管理中心来提供统一的服务注册、路由、组合以及消息传递等机制。给出了将Web服务器与Servlet容器中嵌入Equinox的解决方案,分析研究了服务插件的调用方式、OSGI服务封装方法,并参考Eclipse的Extensio.Registry技术给出框架的扩展方案。
基于上述框架,采用OSG.R4实现Equinox、We.Service、XML等技术设计了一个虚拟天文台系统。并且将OSGI与Hibernate. Spring等开源框架整合,能够更加方便的进行工程的开发并对系统进行维护。通过Hibernate技术实现了对象的持久化,利用Spring技术实现了整个工程中组件的控制。通过Spring技术跟Hibernate技术相结合,使得控制反转应用于组件服务和相关的事务关系,实现集成业务。数据库方面支持Oracle,SQLServer,MySQL等数据库,能够根据不同的驱动进行连接。
相对于一般的We.Service系统,该系统能够稳定的不间断运行时实现动态的业务变更,而且实现所有的用户共同使用而不产生干扰。具有可插拔、可动态部署、资源服务细节无关、模块依赖最小化等特点。具有较好的应用前景。