基于MapGIS-IMS SOA的WebGIS研究与实现

时间:2022-08-27 07:28:42

基于MapGIS-IMS SOA的WebGIS研究与实现

摘要:运用基于面向服务的体系结构(SOA)的Web Service技术可以为WebGIS中诸如并发访问能力、系统的异构兼容性、系统的集成和维护、信息共享和以及跨平台互操作等多方面的问题,提供较为理想的应用方案。MapGIS-IMS SOA开发平台采用SOA构建分布式WebGIS,将服务与WebGIS相结合,用服务构建封装好的、可重用的、易拓展维护WebGIS。

关键词:SOA;Web服务;WebGIS;MapGIS-IMS;GIS

Research and Implement of WebGIS Based on MapGIS-IMS SOA

GUO Kai

(College of Computer Science & Technology, Wuhan University of Technology, Wuhan 430063, China)

Abstract: The Web Service technology based on service-oriented architecture (SOA) can provide more ideal applications for such problems in WebGIS as the concurrent access capability, the heterogeneous compatibility of system, systematic integration and maintenance, information sharing and dissemination, as well as cross-platform interoperability. Combining services and WebGIS, the MapGIS-IMS SOA development platform constructs the distributed WebGIS through adoption of SOA and also, through services, the reusable WebGIS, good packaged and easy to expand and maintain.

Key words: SOA; web service; WebGIS; MapGIS-IMS; GIS

传统的WebGIS[1-2]是一种独立、封闭式的系统,各WebGIS产品是一种紧密耦合的产品,各WebGIS产品各自包含了从数据管理、数据传输到数据表现等全套的数据处理功能,且不同的产品有不同的接口,所管理的地理空间数据也不相同,这样对于特定的地理空间信息资源只能通过特定的WebGIS产品来访问,从而形成了分布在Internet上的一个个“信息孤岛”,这给地理空间信息共享带来了困难[3-4]。

采用SOA这种方法构建的分布式WebGIS可以将功能作为服务交付给终端用户,也可以构建其他的GIS服务[5]。这样做可以实现空间信息共享和空间信息服务,提高空间信息的利用率,消除“信息孤岛”。

而中地数码开发的MapGIS-IMS SOA,是一个高效、敏捷的服务式WEBGIS开发平台,提供基于网络的空间数据的共享和全功能GIS服务。

1 面向服务的体系结构

1.1 SOA概述

面向服务的体系结构(service-oriented architecture, SOA)是一个组件模型。面向服务的体系结构将应用程序中的不同功能单元称为服务,并通过对这些服务之间定义良好的接口而将其联系起来。接口是采用中立的方式进行定义的,也就是说它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互,如图1。

虽然面向服务的体系结构不是一个新鲜事物,但它却是更传统的面向对象的模型的替代模型。作为紧耦合的面向对象的模型已经存在二十多年了。虽然基于SOA的系统并不排除使用面向对象的设计来构建单个服务,但是其整体设计却是面向服务的。由于考虑到了系统内的对象,所以虽然SOA是基于对象的,但是作为一个整体却不是面向对象的,不同之处在于接口本身。SOA系统原型的一个典型例子是通用对象请求体系结构CORBA(Common Object Request Broker Architecture)。CORBA已经出现很长时间了,其定义的概念与SOA相似[6-7]。

然而,现在的SOA因为基于一些更新的软件技术己经有所不同了,这些技术是以可扩展标记语言(Extensible Markup Language)为基础的。通过使用Web服务描述语言(Web Services Definition Language, WSDL),这种基于XML的语言来描述接口,服务己经转到更动态且更灵活的接口系统中,非以前CORBA中的接口描述语言(Interface Definition Language, IDL)可比。

1.2 SOA服务概念

Web Services是一种构建应用程序的普遍模型,可以在任何支持网络通信的操作系统中实施运行。定义如下:所谓Web Services(Web服务),是指那种自包含、自描述、模块化的应用程序,这类应用程序能够被、定位,并通过Web实现动态地调用。 利用Web服务技术,可以很好地实现服务在Web层次的互操作,并为服务的整合,特别是电子商务领域中商业过程的组合或服务链的形成提供了良好的基础[8]。

在构建和使用Web Service时,主要用到以下几个关键的技术:

1) XML:描述数据的标准方法。2) SOAP:表示信息交换的协议。3) WSDL:Web服务描述语言。4) UDDI(Universal Description, Discovery and Integration):通用描述、发现与集成,它是一种独立于平台的,基于XML语言的用于在互联网上描述商务的协议。

实际上,Web Service的主要目标是跨平台的可互操作性。为了达到这一目标,Web Service完全基于XML(可扩展标记语言)、XSD(XML Schema)等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。由此可以看出,使用Web Service会带来极大的好处[9]:

1) 良好的封装性:Web Service是一种部署在 Web 上的对象,对于使用者而言,他能且仅能看到该对象提供的功能列表。

2) 松散耦合:Web Service实现的任何变更对调用者来说都是透明的,其实现平台(如.Net 或 J2EE)的变化对用户丝毫没有影响。

3) 使用标准协议规范:Web Service其所有公共的协约完全使用开放的标准协议进行描述、传输和交换。

4) 通用的数据格式:Web Service 使用XML来实现通讯,任何支持同样的开放式标准的系统都能够理解Web Service。

5) 跨平台: 也就是其实现,部署可以采用不同的操作系统,编程环境,相互调用不存在任何障碍。

6) 跨防火墙。

2 MapGIS-IMS SOA

2.1 平台简介

MAPGIS-IMS SOA平台基于SOA框架,提供服务式的WebGIS开发,这是MAPGIS-IMS的一个突破。平台提供基于网络的空间数据的共享和全功能GIS服务,具备“纵向多级,横向网格”的分布式体系结构,拥有跨平台、跨网络、跨语言的特性。

MAPGIS-IMS SOA平台把所有复杂问题隐藏在内部,为用户提供一套功能强大、及其简单的应用服务接口,用户直接调用这些二次开发接口便能简单、快速的开发出各种功能的WebGIS站点。

2.2 体系架构

MapGIS-IMS SOA体系架构如图2所示。

1) 客户端:采用普通Web浏览器,用来访问WebGIS站点,并向GIS Web服务集成端提交操作请求。

2) GIS Web服务集成端:提供GIS Web服务的应用接口,接受客户端发来的请求,通过IIS/Tomcat网络服务器、Web服务示例站点处理请求,并调用GIS Web服务层GIS核心处理接口。

3) GIS Web服务层: Web服务处理的核心层,提供核心WebGIS功能,如地图查询、编辑、空间分析、网络分析等核心接口。

4) MAPGIS7数据服务器:提供MAPGIS7二次开发组件,为GIS Web服务层提供数据和底层支持。

2.3 系统实现

MAPGIS-IMS SOA平台使WebGIS系统开发起来更加方便、高速,可以让开发人员对Web服务的使用从简单的客户端―服务器模型扩展成任意复杂的系统。

2.3.1 NGSIG简介

NGSIG:是国家空间地质信息网格项目的简称。

课题背景:

1) 地质调查工作中数据密集、计算密集、资源分布、异构等问题制约了行业应用和信息化发展 ,空间信息网格应运而生。

2) NGSIG采用“网格”的设计思想,以大型GIS(主要为MAPGIS7.0)平台为支撑,兼容异构网络和平台。

3) 网格以GIS Web 服务为核心,服务的各节点高度自治。

2.3.2 中国地质调查信息网格简介

中国地质调查信息网格:是以地质调查信息化成果为对象,通过多源、异构、海量地质空间数据、软硬件资源一体化描述、存储、组织、发现、分布式共享和协同的机制,基于SIG,网格GIS技术,是一个具有开放性、集成性、可重构性、可重用性、良好的伸缩性一站式地质调查信息化共享与服务平台,面向政府、企(事)业、公司和个人提供全方位的地质调查信息化建设成果(数据资源、计算资源、软件资源)集成与共享服务。

3 结论

针对目前WebGIS系统存在的数据共享困难、难以与其它应用系统集成、可扩展性不强、开发维护成本高等缺陷,WebGIS开发技术正从组件式GIS向服务式GIS发展。中地数码开发的MapGIS-IMS SOA平台提供一种新型基于SOA的分布式架构方案,可以实现不同GIS平台的空间数据互操作以及可处理TB级海量空间数据,并且提供windows+Unix的GIS解决方案。

参考文献:

[1] 龚健雅,杜道生.当代地理信息技术[M].北京:科学出版社,2004:92-95.

[2] 闾国年,张书亮,龚敏霞,等.地理信息系统的集成原理与方法[M].北京:科学出版社,2003:261-263.

[3] 赵需生,杨崇俊.Web-GIS的设计与实现[J].中国图象图形学报,2000,5(1).

[4] 刘南,刘仁义.WebGIS原理及其应用[M].北京:科学出版社,2002.

[5] 李飞雪,李满春,梁健.基于SOA的WebGIS框架探索[J].计算机应用,2006,26(9):2225~2228.

[6] 魏东.基于SOA体系结构软件开发的研究与实现[D].西安:西北大学,2005.

[7] 王兵.基于面向服务架构的应用系统开发与集成研究[D].四川大学,2005.

[8] 柴晓路.Web服务架构与开放互操作技术[M].北京:清华大学出版社,2002.

[9] 柴晓路,梁宇奇.Web Services技术、架构和应用[M].北京:电子工业出版社,2003.

上一篇:基于WEB的网络管理技术 下一篇:基于GIS的AIS船舶监控系统的船舶分类显示