基于Web 服务的SOA 应用研究

2010-12-31 23:22付伟庆
中国新技术新产品 2010年2期
关键词:开源信息管理黑龙江

岳 冰 刘 勇 付伟庆

(1.黑龙江大学 信息科学与技术学院,黑龙江 哈尔滨 150080 2、黑龙江大学 电子工程学院,黑龙江 哈尔滨 150080 3、黑龙江大学 建筑工程学院,黑龙江 哈尔滨 150080)

1 引言

随着Web 服务的出现,面向服务的体系结构和Web 服务的结合,产生了巨大的应用前景。根据预测,基于SOA 的应用必将占领软件市场的重大比重。在这种情况下研究基于SOA 的应用就具有经济意义。而SOA 的研究就是围绕着应用进行的,SOA 的基本协议已经完成,这就为开发基于SOA 的应用提供可能,而接下来的研究主要是围绕着开发部署中存在的问题进行改进,根据SOA 的特点可以知道就算进行改进也并不影响已经完成的开发,仍然可以保证服务的重用,因此对于SOA 应用的研究就迫在眉睫。基于SOA 的应用目前商业公司分别推出了自己的解决方案,并且取得了一些应用实践,而目前的情况是开源产品己经具备了一定的水平,在这样的情况下提出基于开源产品的SOA 应用研究就具有重要的意义。而目前虽然开源产品比较丰富,但是也存在着鱼龙混杂的局面,更主要的是每个开源产品主要解决一个方面的问题,为此本文主要探讨如何集成各种开源产品提出比较完整的解决方案。

2 基于开源产品的解决方案

目前开源产品提供了丰富的工具和服务器产品,能够从不同的角度来提供SOA 应用的解决方案,但是不同的开源社区的发展情况也是不均衡的,有的社区比较活跃,产品也比较成熟,而有的则不够成熟,或者进步很慢,利用开源产品就需要进行合理的选择,通过比较不同产品的特点来选择适合自己的产品。开源产品是丰富的,水平也是参差不齐,因此不可能进行全面的比较,本文主要是选择有代表性的产品来作为解决方案的基础。本文主要从应用的开发框架的选择、服务器的选择、开发工具的选择,这三个方面来进行的。

2.1 Spring

Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE 应用程序开发提供集成的框架。SPring 框架是一个分层架构,由7 个定义良好的模块组成。

2.2 Geronimo

Apache Geronimo 是Apache 软件基金会的开放源码J2EE 服务器,它集成了众多先进技术和设计理念。这些技术和理念大多源自独立的项目,配置和部署模型也各不相同。Geronimo 能将这些项目和方法的配置及部署完全整合到一个统一、易用的模型中。

2.3 Axis2

Apache Axis2 是Apache Axis SOAP 项目的后继项目。此项目是Web 服务核心引擎的重要改进,目标是成为Web 服务和SOA 的下一代平台。作为一个干净的可扩展的开放源代码的Web 服务平台,Axis2 的体系结构高度灵活,支持很多附加功能,如可靠消息传递和安全性等。Axis2 具有模块化体系结构,由核心模块和非核心模块组成。

2.4 Eclipse

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java 开发工具(Java Development Tools,JDT)。

3 学校信息管理系统的设计与实现

3.1 学校信息管理系统分析

学校信息管理系统首先要解决信息的共享问题,通过本部门提供信息的查询服务,为其它部门的使用带来方便。正是因为如此本文主要是根据自身掌握的信息,提供信息查询服务。由于整个学校对信息的需求很复杂,因此首先根据共同的需要,提供基本的服务,而考虑到服务消费者的复杂性,本文主要从本部门所掌握的信息情况,根据自身特点,考虑各种可能的基础上提供信息查询服务,也因此本文是以提供信息、查询服务为中心的分析。

3.2 系统服务的设计与实现

基于SOA 的应用主要包括四个层次,分别是:数据层,数据访问层,业务逻辑层,用户界面层。本部分主要描述系统服务的设计与实现,也就是重点描述业务层。这是因为基于面向服务的系统中,服务的设计与实现是这个系统的核心。业务逻辑层又区分为两个层次:一是基础的服务,为其他的服务提供基础;二是具有应用逻辑的服务。

学生信息管理服务,主要提供学生信息的修改、查询等服务。课程安排、招生信息等服务都需要通过对其调用来获取或者增加学生信息。

教员信息管理服务,主要提供教员信息的修改、查询等服务。科研申报服务需要通过对其调用来查询申报人员的情况;职称评定服务需要通过调用来查询基本的情况同时对其进行修改;同样课程安排服务需要根据教员的基本情况进行课程的安排,也需要相关的信息。

后勤信息管理服务,通过提供后勤信息的查询、修改等操作,来满足其他服务的调用需要,例如招生部门需要查询后勤能力来作为招生的参考。

教学资源信息管理服务,主要是提供教学资源的查询,申请等操作。

问卷管理服务,提供各种问卷的管理,是发布问卷的基础,同时提供问卷的查询等操作。

4 总结语

SOA 作为一个新型的体系架构,基于Web 服务的SOA 应用研究还在不断深入,其技术不断发展与更新之中,本文虽然对SOA的应用研究进行了比较全面的论述,从基本概念到开发方法,从开发技术到开发产品。虽然基于Web 服务的SOA 应用研究主要就是围绕两个方面:一是功能的丰富,满足不同的需要;二是简化开发成本。但是由于SOA 一应用领域的多样性,还是存在一些问题没有涉及和解决,还需要进一步的研究。本文主要侧重于基于现有技术提出应用的解决方案,因此具有局限性,下一步的工作就是根据在应用中发现的问题,完善解决方案,从而达到进一步简化SOA 的开发。

[1]R.Hull and J.Su.Tools for ComPosite Web Services:A Short Overview [J],SIGMOD Record,2005,34(2):86 一 95.

[2]X.Fu,T.Bultan,and J.Su.Analysis of Interacting BPEL Web Serviees[J],13th International World Wide Web Conference(WWW),2004:621 一630

[3]R.Hull and J.Su.Tools for Design of Composite Web Services[J],ACM SIGMOD International Conference on Management of Data,2004:958 一961

[4]孟.精通Spring-Java 轻量级架构开发实践[M].北京:人民邮电出版社,2006

[5]Anil Hemrajani.韩坤等译.Java 敏捷开发-使用 Spring、Hibemate 和 Eelipse[M].北京:人民邮电出版社,2007:16 一17

[6]朱振杰.SOA 的关键技术的研究与应用实现[D].成都:电子科技大学,2006

[7]刘莹.基于BPEL4WS 的工作流引擎的研究与实现「D].成都:电子科技大学,2006.

猜你喜欢
开源信息管理黑龙江
造价信息管理在海外投标中的应用探讨
Homeless children in India publish newspaper
评《现代物流信息管理与技术》(书评)
五毛钱能买多少头牛
Write a caption
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
在高速公路信息管理中如何做好QC小组活动
开源计算机辅助翻译工具研究
黑龙江 首推医改问询制