- 2
- 0
- 约8.47千字
- 约 4页
- 2018-05-09 发布于福建
- 举报
第 4O卷 第 3期 河南大学学报(自然科学版) Vo1.40 No.3
2010年 5月 JournalofHenanUniversity(Natura1Science) M av2O10
基于 OSGi的Web容器重构
鲁 明 。,李 曼
(1.河南大学 计算机与信息工程学院,河南 开封 475004; 2.中国科学院 软件研究所软件工程技术 中心,北京 100190)
摘 要 :为满足 Internet环境对软件系统的可扩展性、可读性和可重用性的需求 ,使软件更好地面向服务 ,提 出一
种以OSGi为基础框架重构软件 的方法 ,采用面 向服务 的组件模型快速方便地实现 Web容器的OSGi化.
关键词 :0SGi;Web容器 ;面 向服务 的组件模 型
中图分类号:TP311 文献标志码 :A 文章编号:1003—4978(2010)03—0295—04
RefactorW ebContainerBasedon 0SGi
LU M ing一,LIM in
(1.CollegeofComputerandInformationEngineering,HenanUniversity,HenanKaifeng475004,China
2.TechnologyCenterof’SoftwareEngineering,InstituteofSoftzoare,TheChineseAcademyofiences,Beijing100190,China)
Abstract:TheOSGicomponentarchitectureforsoftwaredevelopmentcanbettermeettherequirementsofcurrent
Internetenvironmentinscalability,readabilityandreusability.ThispaperpresentsanapproachtOrefactorlegacy
softwarestowards service-oriented systems using the OSGias the foundation framework.A case study on
reconstructingourW ebcontainersystem isalso involvedtOvalidatetheapproach.
Keywords:OSGi;W ebcontainer;service—orientedcomponentmodel
0 引言
软件分布在 Internet上应该是 自治的、上下文敏感 的、演化的,所 以需要提供更好的可扩展性 、可读性和
可重用性.传统软件项 目采用模块技术来提供可扩展性 、可读性和可重用性.比如J2EE技术采用包、命名空
间和类加载器支持模块化设计 ,但是这种机制存在很多局限性口-23.基于组件模型的软件是 由带有明确接 口
的独立部分组成 ,但是组件模型缺少动态性支持 ,组件可能被频繁安装 、卸载、替换或者选择.OSGi(Open
ServiceGatewayInitiative)规范所支持面向服务的组件模型,则提供动态性支持 ,它为网络服务定义了一个
标准的、面向组件的计算环境.本文提出一种重构方案,将传统软件系统转化为基于面向组件模型的系统 ,同
时通过案例展现该重构方法.
1 面 向服务的组件模型和 OSGi框架
组件模型通过把系统分解成独立的组件去实现具体 的功能,简化 了开发和管理.组件是可 以独立部署
的,有接口和上下文依赖的组合单元 ,可以被第三方系统引用.但是 ,组件模型只定义 了静态 的接 口和功能,
不支持在运行时动态增删改的变化 ,因此需要在组件模型 中引入面向服务的组件模型.在组件模型中,组件
的实现是通过服务提供方定义的组件接 口来完成的;在面向服务的计算中把服务设计为基本的元素,服务提
供者可以在运行时动态注册服务.服务提供者和服务使用者之 间的依赖和绑定关系是动态的、松耦合 的.面
向服务的组件模型融合了面向服务的计算和组件模型,同时加入
原创力文档

文档评论(0)