第35卷第5期 2012年5月 测绘与空间地理信息 GEOMATICS&SPATlAL INFoRMATloN TECHNOLOGY Vo1.35.No.5 May.,2012 分布式GIS的几种实现平台比较 刘 玉 ,郗笃刚 (1.天津市水利科学研究院,天津300061;2.海军海洋测绘研究所,天津300061) 摘 要:分布式GIS已经成为WebGIS发展的一个热点,本文在介绍分布式平台的原理的基础上,介绍了目前三 种主流分布式GIS平台的主要原理和实现技术,总结了三种主流分布式实现平台的优缺点以及不同平台的适用 情况。 关键词:分布式GIS;CORBA;ActiveX/DCOM;JAVA 中图分类号:P208 文献标识码:B 文章编号:1672—5867(2012)05—0010—04 Comparison of Several Distributed GIS Implementation Platform LIU Yu,XI Du—gang (1.Tianjin Hydraulic Science Research Institute,Tianjin 300061,China; 2.Naval Institute of Hydrographic Surveying and Cha ̄ing,Tianjin 300061,China) Abstract:Distributed GIS has become a hot spot of WebGIS development.Based on the introduction of the principle of distributed platform,this paper introduces the principle and implementation technique of three mainstream distributed GIS platform and summari— zes their advantages,shortcomings and applicable circumstances. Key words:distributed GIS;CORBA;ActiveX/DCOM;JAVA 0 引 言 随着互联网技术的发展,信息的发布、检索和浏览发 生了革命性的变化,给人们带来了极大的方便。Web GIS 成为当前地理信息系统发展的一个主要方向。由于具有 系统成本低、操作简单、满足客户范围广等众多传统GIS 有效地动态平衡负载,提高运行效率 。目前,分布式 Web GIS已成为Web GIS开发的一个热点。为此,本文介 绍了目前主流的几种分布式Web GIS实现平台,并分析 了几种分布式WEBGIS实现平台的优缺点。 1分布式GIS简介 分布式GIS是随着Intemet技术的飞速发展而发展起 来的一种GIS模式。分布式GIS是指跨越任意数量的组 织、在任意数目的平台中分布、能够被任意数量的用户访 问的GIS能力。在分布式GIS中,所有的计算资源、GIS 服务器、数据库服务器和地理信息等广泛分布在lnternet 上。用户不必关心数据在物理上存储于何处,也不需要 知道提供服务的GIS位于何方,只要遵循一定的开放原 无法企及的优点,使得Web GIS已成为当今GIS应用和研 究的热点领域。目前,相对成熟的Web GIS实现方法也 有不少,包括CGI(通用网关接口技术)、Server API(服务 器应用程序接口)、Plug—in(插件法)和JAVA等技术。然 而,随着互联网的不断发展扩大,传统Web GIS体系结构 互操作性差、扩展性差、移植困难、网络通信量大等弊端 也日益显示出来。随着网络和面向对象技术的发展而不 断完善起来的分布式对象技术(Distributed Object Techno1. ogy,DOT)的出现,为解决上述Web GIS的弊端提供了新 则,任何用户可以向任意服务器请求地理信息和服务。 分布式GIS追求的目标是无缝连接和“即插即用”,重点 的途径。分布对象技术的运用使GIs系统从经典的C/S 模式转变到以组件开发为基础的分布式计算模型。该模 型把庞大的两段式GIS分解为可以自我管理的组件,这些 GIS组件之间可以跨网络或跨操作系统进行互操作,可以 解决网络中异构环境的互操作问题。分布式GIS产生的 前提在于分布式的地理信息(Distributed Geographic Infor— mation,简称DGI)的存在,分布式地理信息是指包括地 图、图形、文本、数据的任何形式的地理数据的广泛分布。 收稿日期:201l一04—02 作者简介:刘玉(1982一),女,四川资阳人,工程师,博士,2010年毕业于中国科学院地理科学与资源研究所,主要从事地理信息系 统开发与应用研究。 第5期 刘玉等:分布式GIS的几种实现平台比较 ject Request Broker)、OMG IDL(Interface Definition Lan’ 地理信息从本质上具有地域分布特征,是一种分布式的 信息资源,地理信息在空间上是分布的,具有明显的地域 性。因此,地理信息的分布式组织和处理是最适合地理 信息分布规律的组织形式。分布式GIS平台的关键技术 guage,OMG IDL)和IIOP协议(Internet Inter—ORB Proto— co1)三个关键模块组成。其中,ORB是对象之间通信的中 间件,它屏蔽了与底层平台有关的细节,使开发者可以集 中精力去解决与应用相关的问题。当客户调用一个服务 对象的方法,ORB截获这一调用同时负责查找实现服务 的对象并向其传递参数、调用方法返回最终结果。整个 过程是透明的,客户并不需要知道服务对象位于什么地 方,它的编程语言和操作系统是什么。CORBA对象接口 主要有:多层应用程序体系结构、对象和组件技术,以及 Web技术等。多层应用程序体系结构是构成分布式GIS 组件平台的框架;对象和组件技术用来封装GIS的业务逻 辑,即多层结构的中间层;Web技术是实现Web应用的一 些常见技术,包括服务器端的Web技术和客户端的Web 技术。 图1表示的是分布式GIS应用的一种多层客户/服务 器模型。客户端可以是Internet中常见的客户程序,如 Web浏览器或FTP(File Transfer Protoco1)程序。多层服务 器则包括Web服务器和一个GIS进程,它们通过一种特 殊的DGI(Distirbuted Geography Information)网关程序进行 通讯。当然,具体应用可能与上述的通用模型不同。例 如,一些简单的应用可以把GIS的一些功能也封装进DGI 网关程序中,从而不需要额外的GIS服务器。 图1分布式GIS应用的多层C/S结构 Fig.1 The C/S structure of distributed multi—layer GIS appfication 2分布式GIS的几种实现平台介绍 由于分布式技术的众多优点,使得分布式GIS自产生 开始就成为研究的热点,众多厂商和研究组织纷纷提出 了自己的解决方案。目前主流的分布计算平台有:OMG (Object Management Group,对象管理组织)的CORBA (Common Object Request Broker.Architecture,通用对象请 求代理体系结构)、微软公司的ActiveX/DCOM,以及SUN 公司的JAVA技术。这三种方案代表了当今分布对象技 术的最高水平,而且每种技术均有其自身的特点和优势。 2.1 C0RBA CORBA(Common Object Request Broker Architecture) 是OMG(Object Management Group)提出的一种独立于语 言、操作系统、平台和厂商的面向对象分布式系统的规 范。CORBA的主要目标是解决面向对象的异构应用之间 的互操作问题,并提供分布式计算所需的一些服务。 CORBA的底层结构是基于面向对象模型的,由ORB(Ob. 由统一的、独立于编程语言的IDL定义。CORBA对象通 过IIOP标准协议进行通信。 参考模型是理解CORBA体系结构的关键,它包括四 个主要部分:ORB(定义了CORBA的对象总线,使对象能 够在分布式的环境中进行透明的请求和应答)、Applica- tion Objects(所有以CORBA为运行环境的应用)、Object Services(定义了为分布对象所提供的系统级的基本服 务),以及Common Facilities(定义了能够直接被许多应用 对象所共享的服务,它可以是水平的,提供GUI、电子邮件 这样的普通服务;也可以是垂直的,提供特殊领域的服 务,比如地理空间信息管理 )。 CORBA为异构分布环境下不同机器上的应用提供了 互操作性,使用CORBA技术构建分布式GIS组件平台, 具有很多优点:CORBA对象可以用任何一种CORBA软 件开发商所支持的语言来编写。目前,对于较为流行的 编程语言(包括c++,Smalltalk,Java),已经有了许多第 三方的ORB;CORBA对象可以运行在任何一种CORBA 软件开发商所支持的平台上,如Windows,Solaris,HP—UX 等。ORB可以在多个服务器之问实现负载均衡,可以更 充分地利用系统硬件资源;另外,当系统需要较高的稳定 性时,可以利用CORBA提供的容错机制,CORBA能使每 一个对象同时在两个或多个服务器上运行,当其中的一 个出现故障时,系统能自动切换到另一个服务器。 1998年3月l8日,OGC(Open GIS Consortium)发布 了使用CORBA技术访问和处理由简单几何要素组成的 地理空间信息的接口规范(图2表示的是CORBA参考模 型以及该规范在其中的角色),但由于CORBA的开发比 较复杂,目前真正单纯基于CORBA的应用产品还比 较少。 图2 CORBA体系结构 Fig.2 System framework of CORBRA 12 2.2 ActiveX/DCOM 测绘与空间地理信息 2012牟 cIMS,MapInfo的MapXtreme等都支持Windows DNA的体 系结构。 Windows DNA(Windows Distributed internet Applica— tion Architecture,现简称为Microsoft Web Solution Platform) 2.3 JAVA技术 J2EE(Java2,Enterprise Edition)是Sun公司为多层企 是Microsoft在1997年9月圣地亚哥举行的专业开发人员 大会上,引入了的一个新术语,用来描述分布式应用程序 开发的战略性的框架结构。它提供了一个基于Web应用 开发的多层次分布式计算解决方案的统一体系,将分布 式计算的丰富的服务集成到操作系统、工具软件和应用 软件中,使PC机的功能,客户/服务器计算的健壮性和In— 业应用而建立的体系结构。它巩同了J2 SE(Java 2,Stan— dardEdition)中的特征,如“编写一次、到处运行”的特性、 方便存取数据库的JDBC,以及能够在Internet应用中保护 数据的安全模式,等等。J2EE在处理好困扰Java的性能 和安全问题的同时,增强了可伸缩性。另外,JAVA技术 ternet的全球通信能力得以紧密结合。 Microsoft的目标是为开发人员提供平台、组件技术、 应用程序基础结构、交互操作性服务和工具,它们在多层 框架中运行,并且共享一系列的安全性、目录和网络服 务。其中,COM(Component Object Mode1)和其他标准协 议在多层之间起连接作用。HTML开发人员可以将ASP (Active Server Page)脚本直接嵌于主页动态执行,脚本调 用执行业务逻辑的对象,然后业务对象再操作数据库服 务器上的数据。图3列出了Windows DNA中的平台、技 术、结构、服务和工具。 图3 Windows DNA体系结构 Fig.3 System framework of Windows DNA Microsotf引入Windows DNA目的是为分布式和企业 化Web应用程序提供可伸缩的体系结构。利用Windows DNA的n一层计算模型,开发人员可以使用Web来减少 他们的部署费用,同时获得以前体系结构(更为单一和以 桌面为中心的方式)下不可能实现的伸缩性。Windows DNA是当今世界应用最为广泛的Web应用程序开发和 部署甲.台。因此,Windows DNA是一种很好的建立分布 式GIS组件平台解决方案 。因为:DNA在操作系统级 刖提供包括平台、组件技术、应用程序基础结构、交互操 作性等一系列产品和服务,运行速度快,使用方便。DNA 采用多层的应用程序体系结构,多层的方法具有将负载 分布到多个服务器的优点,适合于开发规模可变的高分 布式应用程序。在DNA的心脏是一个集成式编程模型, 它以组件对象模型(COM)和Intcrnet标准为基础。非常 适合于基于组件的能运行在[nternet上的应用程序的开 发。目前,市场上的主流分布式GIS产品,像ESRI的At- 还提供了对EJB(Enterprise JavaBeans),Java Servlets,JSP (Java Server Pages),以及XML(eXtensible Markup Lan— guage)技术的全面支持。 如图4所示,组件、服务和通信是J2 EE平台包含的 三种基本技术。组件技术(EJB,JSP和Servlets)是用户创 建企业应用,即用户界面和业务逻辑的基本部分。组件 被定制成能够使用它们所部署环境中的现有资源。J 2 EE 平台支持通过API为组件提供访问数据库、事务、命名、目 录和消息等服务。J2 EE平台还提供客户和服务器之间 以及不同服务器中的对象之问的通信技术。 概括起来,J2 EE体系结构具有如下优点:Java Servlet 和JSP都编译为Java Class运行,因此执行性能明显提高 JSP可以直接书写HTML,简化了页面的输出,体现了脚本 语言易于使用的优点;复杂的商业逻辑以组件的形式部 署在EJB Container中。南于EJB Container提供了多种组 件事务服务,使系统更能够应付大量的并发用户和管理 复杂的事务逻辑。EJB Container中集成的组件命名服务 可以使组件位置透明化,简化了组件的部署和客户端应 用的维护;开发过程易于分丁,可以由专人负责编写组 件,其他人组装页面;J 2 EE平台全面支持和实施XMI , XML实施独立于平台的异质数据,而J2EE平台则实施独 立于平台的解决方案。两者互相补充。 图4 J2 EE的体系结构 Fig.4 System framework J2 EE J2 EE为企业和Web应用勾勒了一幅具有更强的伸缩 性、开放性、安全性且简单易用的蓝图。它为用户提供了一 种可创建广泛兼容的企业解决方案而无需进行复杂编程的 平台,极大地减少了产品研发上市时间、成本和风险。近年 来,许多分布式GIS产品都增加了基于J2EE的应用体系结 构,Maplnfo的MapXtreme Java就是其中一个例子。 第5期 刘玉等:分布式GIS的几种实现平台比较 I3 3 三种分布式GIS实现平台的性能比较4结束语 以上三种不同实现技术分布式GIS实现平台都有各 随着网络技术和分布式对象技术的发展,分布式 自的优点,也都存在着明显的 足。这三种分布式计算 WebGIS已经逐渐成为当今WebGIS开发的一个热点。当 平台的特性比较见l表。 立_蚕 高 今主流的分布式对象技术各有优缺点。选择哪种平台作 为分布式WebGIS的开发平台,需根据实际情况考虑。通 表1三种DCP的对比 常在基于Windows平台的网络中使用,DNA是比较好的 Tab.1 The comparison of three types of DCP 选择;如果程序需要在多个操作系统的异构网络环境中 运行,则最好采用适应CORBA的供应商的产品;如果选 择Java作为编程语言,Sun的J2 EE是最优的选择。近年 通信协议 I1OP RMI—IIOP 来CORBA与Java技术融合,使得CORBA的可行性有了 语言 独立 Java 较大的提高。 平台 独立 独立 分布式对象 ORB JavaBeans,EJB 参考文献: 性能 低 dj [1]周文生,毛锋.胡鹏.开放式的理论与实践[M].北京:科 其中,ActiveX/DCOM具有Microsoft提供的强有力的 学出版社,2007. 开发平台支持,而且还具有封装性好、易于分发、接口规 [2] 承继成,李琦,易善桢.国家空间信息基础设施与数字地 范等优点。但缺乏非Windows平台的支持,无法满足异构 球[M].北京:清华大学出版社,1999. 环境下web GIS的要求。而其网络稳定性和安全性也还 [3] 易正晖.分布式环境监测分析WebGIS的设计与实现 有待于提高。对于Java,分布对象技术通常指远程方法调 [J].测绘科学,2007,32(1):138—139. [4] 吴宇晓,张登辉.基于CORBA的WEBGIS系统的研究及 用(RMI)和企业级JavaBean(Em)。Java的跨平台性非常 开发[J].遥感信息,2003(2):40—43. 好,但实现语言单一,主要集中在JAVA平台,而且虚拟机 [5] 冯文钊,彭立芹,张宏,等.基于.NET平台和Web Service 的机制不可避免地会带来效率的降低。与前两者相比, 方式的WebGIS系统集成[J].计算机工程,2004,30 CORBA对异种语言、异构软/硬件平台都提供支持,有较 (21):64—66. 好的兼容性和互操作性,有较强的灵活性和扩展性。近 [6]周文生,毛锋,胡鹏.基于XML的开放式WebG1S研究 年来CORBA与Java的融合,使CORBA如虎添翼,将 [J].中国图像图形学报,2004,9(10):1 258—1 264. JavaApplet封装CORBA客户程序。使用户通过浏览器就 [7] 陈斌,方裕.大型分布式地理信息系统的技术与发展 能访问后端在不同平台上、用不同语言编写的CORBA服 [J].中国图像图形学报,2001,6(9):861—864. 务对象,大大增强了Web应用的分布处理能力,降低了 [编辑:吴迪] CORBA开发的难度。 (上接第9页) 认的界线存在形式,由普通边界和法律边界组成:普通边 系统内在的信息组织关系,在传统的以满足部门管理需 界是指依靠自然或人造的边界要素,依据各地的普通规 要为目的的地籍管理模式中,这种关系没有得到充分挖 则形成的边界系统;法律边界是指对人造或自然的边界 掘。数字地籍的迅速发展形成了崭新的地籍信息组织环 要素进行精确的测量,取得测量数据,通过法律程序给予 境,这种信息组织环境使得地籍管理部门能够从社会化 承认,边界以法律形式在实地固定下来。边界系统是地 整体信息交流、信息服务角度来建设地籍信息组织机制 籍信息的核心信息,边界系统的形成是一个国家法律、意 和工具,而识别、认识地籍信息与社会公共信息整合关系 识形态、价值观念等在人地关系上的集中体现。 则是实现这一目标的基础。本文从地理系统角度对地籍 2.5宗地——地籍信息的整和体 信息组织体系进行了研究,提出了区域地籍信息模型,以 宗地是具有特定含义的地块,具有固定的位置和明 此为基础探讨了现代地籍信息与社会公共信息的整合 确的边界,可同时辨认出确定的权利、利用类别、质量和 关系。 时态等土地基本要素的最小地块。宗地的上述特性反映 了宗地一方面是地籍信息的最小载体;另一方面也反映 参考文献: 出宗地是地籍信息的整合体,即在时空序列上蕴涵于不 [1] 陈述彭.地学探索(第六卷)[M].北京:科学出版社,2003. 同地籍信息体系中的地籍信息与社会公共信息整合关系 [2]周晓光,陈军,蒋捷,等.地籍地块间的空间拓扑关系 在宗地上得到了统一。 [J].测绘学报,2003,32(4):356—361. [3] 国土资源部信息中心.国外地籍管理发展趋势[M].北 3结束语 京:中国大地出版社,2002. 现代地籍信息与社会公共信息整合关系是现代地籍 [编辑:胡雪]