SuperMap iServer体系结构

fiogf49gjkf0d

SuperMap iServer 6R(2012)包括SuperMap iServer服务器和SuperMap Web客户端(SuperMap iClient)两个部分。服务器用于提供高性能的GIS服务或领域空间信息服务(DSS,Domain Spatial Service),Web客户端用于在Web应用层提供方便易用的客户端开发SDK。
      SuperMap 
iServer 6R(2012)采用了面向服务的体系架构,服务框架是一个三层结构的体系,们分别是GIS服务提供者,GIS服务组件层和GIS服务接口层。首先,由GIS服务提供者实现具体的GIS功能实体,第二层次GIS功能实体封装为粗粒度的模块,即GIS服务组件,在第三层次,iServer通过GIS服务接口将封装好的GIS功能发布多种类型的服务,层次之间由定义好的标准接口进行交互。目前,iServer 6R在每层中都相应提供一系列的功能模块,们之间具有松耦合关系。iServer通过服务管理模块将三个层次中具有对应关系的功能模块进行集成,构建一系列的GIS服务。

                                      图 1 SuperMap iServer 6R体系结构

GIS 服务提供者

GIS 服务提供者层中的模块主要利用 GIS 计算内核或者第三方 GIS 服务封装并统一对 GIS 功能的不同实现,如 UGCMapProvider 模块主要利用 SuperMap Objects Java 组件实现基础地图操作;WMSMapProvider 模块利用第三方 WMS 服务实现基础地图操作;AggregationMapProvider 将多来源地图服务进行聚合实现基础地图操作。

通过 GIS 服务提供者对不同 GIS 功能实体的封装和统一,SuperMap iServer 实现了对多源异构服务的无缝集成与聚合。

GIS 服务组件

GIS 服务组件(GIS Service Component)通过对 GIS 服务提供者(GIS Service Provider)提供的服务能力进行组合,封装成粒度较粗的服务组件。

GIS 服务组件包括通用空间服务(Generic Spatial Service)和领域空间服务(Domain Spatial Service)。

通用空间服务指通常的 GIS 服务,如地图服务、空间数据服务、空间分析服务、网络分析服务等;而领域空间服务则用来描述 GIS 在特定行业中的应用相关的服务,用户通过对通用空间服务的二次开发或配置,添加自己的业务逻辑,就能定制出满足某一行业领域特殊需求的空间服务,进而达到通用空间服务在具体领域的多层次复用。例如气象领域,在通用空间服务的基础之上,加上天气预报服务、气象警报服务等,定制出满足气象行业特殊要求的气象领域服务,用户通过使用该服务能够方便地查询某一城市的天气情况并在地图上显示,查询哪些地区进入了预警状态等。

GIS 服务接口

SuperMap iServer 通过 GIS 服务接口(GIS Service Interface)发布多种类型的Web 服务(Web Service)。这里提到的 Web 服务是一个相对广义的概念,指通过标准的 Web 协议可访问的服务,包括 REST 服务、SOAP 服务、OGC W*S 服务(WMS、WMTS、WFS、WCS、WPS 等)、KML 服务、GeoRSS 服务、二进制形式的服务等。这些服务对外以 GIS 服务接口的形式表现出来,例如 REST 服务接口、WMTS 服务接口等,用户通过对这些服务接口的调用可以使用 iServer 提供的 GIS 服务功能。

SuperMap iServer 服务框架中的 Interface 层是介于服务使用者(Client)与服务业务组件(Component)之间的媒介, Interface 层的服务接口提供了入口点,使用者可以使用此入口点访问服务所提供的功能。

iServer 的三层结构体系具有如下优势:

Ø 通过GIS服务提供者对不同GIS功能实体的封装和统一,实现了对多源异构服务的无缝集成与聚合。

Ø GIS服务接口层的存在使得业务逻辑处理和服务交互的通讯方式是分离的,极大提高了业务组件响应业务环境变化的能力。

Ø 多种基于不同通讯协议、公开服务标准的服务接口同时存在,使得GIS服务能够支持不同的通讯协议,并适应多变的操作要求,如可以将同一地图功能发布为REST服务、WMTS服务WMS服务等。

Ø 为用户的领域空间信息服务扩展(DSSE,Domain Spatial Service Extension提供了良好的基础框架,用户可以根据自身业务需求,在任意层次上开发符合自身行业特点的功能模块。