基于SOA的海洋环境观测集成系统框架研究*

2013-04-20 12:02周智海
海洋开发与管理 2013年9期
关键词:应用层分布式框架

宋 坤,周智海

(国家海洋技术中心 天津 300112)

基于SOA的海洋环境观测集成系统框架研究*

宋 坤,周智海

(国家海洋技术中心 天津 300112)

针对海洋环境观测集成系统面临的分布式异构环境下的动态集成、计算密集与数据密集等问题,结合 “十五”“十一五”海洋 “863”计划的成果,文章引入面向服务的软件体系结构 (SOA)的设计理念,提出了一种基于面向服务架构的分布式开发集成系统框架。整个框架主要由基础平台、数据层、组件层、服务层和应用层等组成。各层内部采用面向对象的方法进行设计,各层相对独立,层间的耦合性比较小,服务层包含了所有分布式子系统的服务抽象和封装,以服务的方式供应用层使用,开放性好、可重用性强,开发效率高。采用该框架的系统可以在分布式环境中应用,解决了海洋环境观测集成系统分布式异构环境的动态集成,同时系统的一些子模块可以高效地加以复用、修改,以满足不断增加的应用需求。

系统工程;海洋环境观测集成系统;面向服务的软件体系结构(SOA);服务

1 引言

海洋环境观测集成系统通过遥感卫星、巡航飞机、监测船、各类浮标、潜标、海床基、水下观测站、岸/平台基海洋观测站、雷达站及其他可利用的观测系统,实现对海洋环境的立体、实时、长期观测和信息处理,形成实测、预报、评估、统计分析等信息产品,并通过互联网、专线等方式,为有关部门及用户提供多种形式的信息服务。随着信息网络的普及,IT技术和海洋观测技术等的发展,海洋环境观测集成系统必将成为异构信息及应用动态集成和数据密集型系统[1]。

海洋环境观测集成系统需要集成几十个观测站点、海区业务中心、国家业务中心、信息服务及应用中心等,参与开发的有几十家科研单位。这就造成应用系统开发语言、部署平台、通信协议等可能不同。如何实现这些应用系统与资源的无缝连接,这就需要一个支持分布式海洋观测应用集成的框架。一方面使得处于异构环境、分布存放的海洋观测应用和数据能够灵活、快速地整合、扩展;另一方面,也是为了满足用户对海洋观测不断增加的应用需求,并能为用户快速、准确的提供信息服务。

2 SOA和Web Service

面向服务的软件体系结构(service-oriented architecture,SOA)概念由Gartner公司在1996年首次提出,是基于 “软件变服务”思想提出的一种新的解决软件重用和应用基础的方案[2]。作为一个组件模型,SOA提供了一种方法,通过这种方法在构建分布式系统时,可以将应用程序的不同功能单元作为服务提供给终端用户应用程序或其他服务。而这些服务通过之间定义良好的接口和契约联系起来。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交换。SOA的特性是 “服务的封装”“服务的重用”和 “服务的互动”,服务是从业务流程的角度看待技术的。其根本目标是解决 “信息孤岛”的问题,并提供随需要变化的服务[3]。

SOA是一种架构模型,而Web Service是SOA最流行的一种实现方法[4]。其提供了一种分布式的计算技术,可以让地理上分布在不同区域的计算机和设备一起工作。使用Web Service,通过松散的服务捆绑集合形式,能够快速低代价地开发、发布和动态绑定应用。将传统的对象集成与开放的、灵活的Web服务整合在一起。系统只需要以服务的形式出现;而选择与该系统交互的其他系统只需要发现那些服务,并且在运行时或设计时与这些服务绑定,就可以使用服务了[5]。

Web Service中共有3种服务角色:服务提供者(service provider)、服务请求者(service requester)和服务注册(service registry)。服务提供者在服务注册中发布自己的服务,并且对使用自身服务的请求进行响应。服务请求者在需要某项服务的时候,利用服务注册查找所需要的服务,然后就可以以一种对服务请求者透明的方式使用该服务。服务注册连接服务请求者和服务提供者。对服务提供者发布的服务进行注册,并且响应服务请求者的服务搜索请求。服务提供者和服务请求者通过消息进行通讯。Web Service中的3种角色以及它们之间的关系见图1。

图1 Web Service中的3种角色及关系

3 海洋环境观测集成系统功能需求

基于目前国内外海洋环境观测集成系统的研究进展,该系统主要包括以下四大功能。

3.1 海洋环境数据获取

针对海洋权益维护、防灾减灾、生态保护、资源开发、海上工程与航运以及国防建设对海洋环境观测数据和海洋监视信息的总体需求,开展新型与智能化海洋环境要素多平台传感与数据获取技术、多平台遥感监测与监视应用技术、移动目标探测与识别技术、数据通信与链路等技术的研究与开发,建立天基 (监测、监视卫星)、空基 (巡航飞机、无人机)、海岸/海岛基 (海洋观测站、雷达站、监测车)、海面及水下 (船舶、浮标、潜标)、海床基 (水下观测站、水下水声探测阵、潜器)相配套的海洋环境立体观测监视平台体系,形成海洋环境立体观测监视能力,获取我国管辖海域及其西北太平海洋环境要素同步、实时、长期、连续观测数据和海洋监视动态信息。

3.2 数据通信与管理

利用Internet网络通信标准和系列技术,构建海洋环境立体观测系统的数据通信网络,实现对海洋环境立体观测数据、信息产品和状态信息等的接收、集成、规范化存储管理和实时传输。

3.3 信息处理与服务

针对获取的海洋动力和生态环境观测实时、准实时、历史、业务指导及其他可利用数据,采用成熟的海洋环境数据处理方法及模式,完成观测数据处理、分析、质量控制等,建立分布式开放型海洋动力和生态环境观测实时数据库、延时数据库,并以此为基础开展实测、统计分析、同化融合和预警预报等信息产品的制作,建立信息产品库,为防灾减灾、资源开发、海洋维权等提供数据和信息产品服务。

3.4 集成系统运行管理

基于海洋环境观测集成系统长期业务化运行的需求,针对海洋环境观测设备、数据传输网络及集成系统软件平台、硬件平台的运行状态、数据集成与处理和信息发布能力等进行状态信息获取、处理、实时显示,系统运行状态统计分析、评估等。为集成系统运行维护、完善升级提供基础信息。

4 海洋环境观测集成系统框架设计

依据海洋环境观测集成系统的功能需求,结合近年来蓬勃发展的面向服务的软件体系架构,本研究提出了一种基于SOA的分布式海洋环境观测集成系统框架 (图2)。

图2 海洋环境观测集成系统框架

该框架主要由基础平台、数据层、组件层、服务层、应用层以及标准规范与管理体系和信息安全体系等组成。各层相对独立,层间的耦合性比较小。

基础平台主要包括海洋观测平台/设备、系统硬件平台和软件平台等作为整个系统运行的支撑。

数据层是系统实现各种服务的数据源。

组件层包含了集成系统运行所需要的基本功能模块,在组件层内部,使用面向对象的设计方法设计每个模块。

服务层包含可提供的各种服务的抽象,每种服务都能提供集成系统的某个独立功能。各个服务所包含的组件层对象都是相互独立的。服务层的各项服务首先需要向服务注册中心发布,当应用层的服务使用者需要使用服务层中的某个服务时,就会向服务注册中心查找相应的服务。查找到相应的服务后,根据获得的地址发起连接,通过简单对象访问协议(simple object access protocol,SOAP),使用特定的服务参数和服务层中的服务提供者绑定,进行服务请求的发送和应答的接收,从而实现服务的调用。

应用层负责和用户进行交互,并根据需要从注册中心查找并绑定相应的服务。

4.1 基础平台

基础平台处于该系统框架的最底层,主要包括海洋观测平台,如海岸基与海岛基定点海洋动力和生态环境观测、近海海洋动力环境定点剖面观测、高频地波雷达海洋动力环境观测等设备和船载海洋动力和生态环境观测系统、海洋环境卫星/航空遥感应用观测系统等提供实时海洋环境观测要素;系统硬件平台如,服务器、存储设备、工作站和网络设备等为系统提供硬件支撑;系统软件平台如,操作系统、数据库等作为应用系统的支持。

4.2 数据层

数据层作为整个系统的实现各种服务的基础,为系统提供各类海洋信息数据,包括海洋环境观测要素实时数据库、延时数据库、地理信息等基础数据库、历史资料库、信息产品库、系统运行状态库等。

4.3 组件层

组件层包含了系统运行所需要的基本功能模块。在该层内部,使用面向对象的方法设计每个模块。各模块内部包含一些相关的对象,这些对象互相通信、协作共同完成对外提供的服务。如,数据分析和处理模块,完成观测数据数码转换、质量控制、数据分类等标准化和规范化处理,形成相互关联的四维时空数据;数据访问模块,可以依据提交的服务从数据层中获取需要的数据,并将返回的数据转换为需要格式或根据服务的要求将处理后的数据录入至相应的数据库,提供服务与数据层之间的接口;数据交互模块,根据服务的要求和定义的传输流程实现各类观测数据和信息产品的传输和存储管理等。

4.4 服务层

服务层包含可提供的各种服务的抽象和封装。每个服务完成系统的某项独立的功能,以服务的形式提供给高层使用。每个服务都通过组织和协调组件层中相应的功能模块,来向应用层提供粗粒度的、较大规模的数据获取分析、信息发布、预警预报、辅助决策等功能。应用层通过从服务注册中心查找所需要的所有服务的地址和参数后,通过特定的服务参数,使用服务层提供的功能。

4.5 应用层

应用层负责用户和系统的交互,为用户提供人性化的操作和展示界面[6]。应用层主要包括:可视化用户界面、浏览器、移动应用等。其中,可视化用户界面为用户提供C/S架构的直观、形象的系统操作和展示方式;浏览器通过互联网等,实现对系统的远程操作、使用;移动应用是借助互联网和无线网络将对集成系统使用扩展到智能手机或PDA上,使处于移动状态的用户可以随时随地通过手机上网方式及时获取数据、信息等。

5 总结

随着我国沿海地区的经济发展和国家综合实力的增强,对区域乃至全国性海洋环境观测和信息服务能力建设的需求逐年增加。依据SOA体系结构模型的基本特征,本研究引入SOA的设计理念提出了一种基于面向服务架构的开放式海洋环境观测集成系统的框架。采用这种框架的系统可以在分布式环境中应用,解决了海洋环境观测集成系统分布式异构环境的动态集成。同时系统的一些子模块可以高效地加以重复用、修改,以满足不断增加的应用需求。

[1] 周智海.海洋环境监测和信息服务集成系统规范化设计考虑[J].气象水文海洋仪器,2004(3):1-8.

[2] 黄小庆,关维德,周宇,等.面向服务架构中的服务分类及其应用[J].计算机集成制造系统,2009,15 (9):1844-1853.

[3] 陈俊杰,苑小军.面向服务架构(SOA)与系统集成[J].中国高新技术企业,2008(11):131-134.

[4] 苗春雨,史美林,姜进磊.基于Web服务的消息中问件系统[J].通信学报,2006,27(11):96-100.

[5] 陈启祥,杨军.面向服务的软件架构SOA及其支撑技术的研究[J].湖北工业大学学报,2005,20 (4):38-41.

[6]KENNETH E K,JULIE E K.系统分析与设计[M].施平安,郝清赋,译.北京:机械工业出版社, 2010:

417-444.

国家高技术研究发展技术 (“863”计划) “南海海洋动力环境数据集成与应用技术系统开发”项目(2008AA09A404).

猜你喜欢
应用层分布式框架
框架
广义框架的不相交性
分布式光伏热钱汹涌
分布式光伏:爆发还是徘徊
基于分级保护的OA系统应用层访问控制研究
新一代双向互动电力线通信技术的应用层协议研究
关于原点对称的不规则Gabor框架的构造
基于DDS的分布式三维协同仿真研究
一种基于OpenStack的云应用开发框架
物联网技术在信息机房制冷系统中的应用