2.2. WebGIS的基本架构与组成部分

发布日期 : 2025-10-12 13:01:48 UTC      

访问量: 662 次浏览

WebGIS应用是在Web应用中增添了 GIS功能,是对Web应用的扩展。

WebGIS的基本架构如图2.3所示。与Web应用相似,WebGIS的基本工作流程是用户使用Web客户端(可以是Web浏览器、移动客户端或桌面应用程序),向Web服务器发送 HTTP 请求;Web服务器将有关GIS功能的请求转发到GIS服务器,GIS服务器从GIS数据库中读取所需要的数据,对请求进行相应处理,如生成地图、执行查询或相关分析,将数据、地图或其他操作结果通过 HTTP 响应返回到客户端中显示。 下面逐一介绍WebGIS的基本组成部分。

WebGIS的基本架构及客户端与服务器端的请求/答复流程

Fig. 2.3 WebGIS的基本架构及客户端与服务器端的请求/答复流程 #

2.2.1. WebGIS 服务器 #

WebGIS服务器是WebGIS架构中最重要的部分。 一个WebGIS应用的能力和质量在很大程度上取决于其所使用的WebGIS服务器, 其功能、可定制的程度、可扩展性及性能是关系到WebGIS应用能否成功的重要因素。

自WebGIS产生以来,WebGIS服务器技术的发展经历了多次迭代变更。 以 Esri产品为例,第一代 WebGIS 服务器产品 ArcView IMS(Internet Map Server)和MapObjects IMS于1996年发布, 这标志着GIS软件产品开始向Web平台进军; 第二代产品是于1998年发布的ArcIMS,主要在性能和功能方面对第一代服务器做了增强和扩展; 第三代产品是于2004年发布的ArcGIS Server,提供了比较完整的系列功能(图2.4)。 以ArcGIS Server为例,一个现代的、完整的WebGIS Server大致提供如下系列功能:

  • 以互联网为媒体,发布二维和三维地图浏览、地图查询、检索、要素编辑、 数据提取、跟踪、地址和位置查询、路径分析、几何处理(如坐标系统变换)、 元数据检索和地理处理功能;

  • 以Web服务的方式发布其功能,支持主流的REST接口(见第3章);

  • 提供(^^^13、’?^3、’^^’3贾、0!^和1^以见第3章)等标准服务, 支持不同厂商产品之间在Web服务层面上的互操作;

  • 利用缓存、优化、云计算等方法提高系统的效率,具有快速的性能和强大的可扩展性;

  • 可高度定制,提供服务器端开发接口、浏览器端开发接口以及桌面和移动平台程序开发接口, 用以支撑富互联网应用的开发。

WebGIS服务器功能体系(以ArcGIS Server为例)

Fig. 2.4 WebGIS服务器功能体系(以ArcGIS Server为例) #

2.2.2. 地理数据库 #

地理数据库是某区域内关于一定地理要素特征的数据集合。 它可以存储不同类型的地理数据,如矢量数据(如点、线和多边形)和栅格数据(卫星与航空影像); 一些专用GIS数据库还支持CAD、3D、交通网络、GPS坐标、三角测量、激光雷达(light detection and ranging,LiDAR)等数据类型的存储。 GIS数据库软件包括小型的、仅供少量用户使用的数据库,也可以大到是一个允许大量用户同时读写的企业级数据库。

地理数据库是WebGIS应用的基础支撑,一个WebGIS应用的价值往往取决于其数据的质量。 GIS数据库产品一般能够提供以下功能:

  • 能够以集中式或分布式存储多种类型的空间数据;

  • 支持空间数据之间复杂的关系和约束规则;

  • 支持地理关系模型(如拓扑结构、道路网络)的定义;

  • 保证空间数据的一致性和完整性;

  • 支持多用户访问和在线编辑环境,提供版本管理机制;

  • 提供可靠的数据安全、备份、恢复和事务回滚机制等;

  • 在数据增加、用户增多等情况下能够保持高的系统性能。

2.2.3. WebGIS 客户端 #

客户端在WebGIS应用中扮演着两个角色:一方面,它代表整个系统的最终用户界面,负责与用户交互, 如收集用户输入、向服务器发送请求、把结果显示给用户。 而大多数最终用户不了解、也不需要了解后台服务器的具体实现细节, 他们只根据客户端的体验来评价一个系统的运行速度、稳定性和界面是否友好。 另一方面,客户端,特别是胖客户端(见第2.3节),还可以运行一些分析等处理任务, 如对地理要素进行动态分类以制作 专题地图 、对过度密集的点进行聚类以及对点状信息内插来生成热度图等。

目前,WebGIS客户端主要包括如下类型。

  • Web浏览器客户端:这类客户端运行于Web浏览器之中。 近年来,Java-Script(和HTML5)、Flex、SilVerlight等技术可以创建出丰富、动态、 友好和很具吸引力的富互联网应用界面(见第2. 4. 2节)。加上一些GIS的应用程序接口, 如 ArcGIS API for JavaScript、Flex 和 Silverlight, Web浏览器可以完成多种GIS功能(见第4章)。典型代表如ArcGIS.com的地图浏览器、 Arc- GIS Explorer Online 和 Google Maps 等。

  • 桌面应用程序客户端:这类客户端直接运行在操作系统上,而不是在Web浏览器之中, 因此不受浏览器“沙箱”环境(即为浏览器中JavaScript和插件程序所设置的、 被严格控制的安全运行环境)的限制。桌面客户端可以方便地访问本地资源, 如本地文件、数据库和外围设备,特别适用于资源密集型的Web应用。 典型代表包括 Google Earth、ArcGIS Explorer Desktop (图 2. 5)和ArcGIS Desktop等。 对于WebGIS专业用户来讲,浏览器客户端的功能有时不够强大,使用桌面客户端是一个很好的选择。 例如,ArcGIS Desktop可以灵活地使用互联网或云中心的多种地图和分析服务, 并且可以与本地数据相结合,提供多种浏览器客户端不能完成的复杂分析操作。

  • 移动客户端:当前WebGIS移动客户端日益流行, 它们大致可以分为两类:一类是基于移动浏览器的; 另一类是基于本地应用程序(或称嵌入式程序)的(见第5章)。 这类客户端典型代表包括智能手机版的ArcGIS(图2. 6)和Google Earth Mobile。

WebGIS应用的客户端往往是针对某特定应用而开发的,不具有通用性,但是有些客户端却有较好的通用性。 那些能够显示和调用规范的Web服务和数据的WebGIS客户端被称为地理浏览器(GeobroWSer)。 典型实例包括

  • 碳项目Gaia(Carbon Project Gaia)是一个二维的地理浏览器, 可以作为一系列地理 Web 资源的客户端, 如 OGC WMS、WMTS 、WCS、WFS、KML、GML、 Microsoft Bing Maps、Yahoo Maps 和 OpenStreetMap 等;

  • ArcGIS Explorer Desktop 可以显示 OGC WMS、KML/KMZ、

    GeoRSS和ArcGIS Server services等标准数据和服务。

虚拟地球(virtual globe)是一种广受欢迎的WebGIS客户端。 虚拟地球是地球或其他世界的三维软件模型(Butler,2006; Foresman, 2008), 虚拟地球允许用户改变观看的角度和位置,观察三维的虚拟环境。 许多虚拟地球从Web上直接获取并显示数据和地图, 因此被称为在线虚拟地球(online virtualglobe)。 比

ArcGIS Explorer桌面版既是一个桌面WebGIS客户端,同时也是一个地理浏览器和虚拟地球。 它能够使用一系列的地图服务,如ArcGISOnline的地图、Microsoft BingMaps和OGC 地图服务等, 并且可以将其与本地计算机上的数据集成起来。 本图就是利用ArcGISExplorer来显示Microsoft Bing Maps在北京“鸟巢”和“水立方”附近的影像。 (致谢:微软公司、NAVTEQ 和 AND Automotive Navigation Data)

Fig. 2.5 ArcGIS Explorer桌面版既是一个桌面WebGIS客户端,同时也是一个地理浏览器和虚拟地球。 它能够使用一系列的地图服务,如ArcGISOnline的地图、Microsoft BingMaps和OGC 地图服务等, 并且可以将其与本地计算机上的数据集成起来。 本图就是利用ArcGISExplorer来显示Microsoft Bing Maps在北京“鸟巢”和“水立方”附近的影像。 (致谢:微软公司、NAVTEQ 和 AND Automotive Navigation Data) #

ArcGIS Mobile(左)和ArcGIS for iPhone(右)是移动WebGIS客户端的例子。 (致谢:Tele Atlas North America,Inc和 Trimble)

Fig. 2.6 ArcGIS Mobile(左)和ArcGIS for iPhone(右)是移动WebGIS客户端的例子。 (致谢:Tele Atlas North America,Inc和 Trimble) #

较流彳了的有 Google Earth、ArcGIS Explorer Desk:top、NASA World Wind(图2. 7)和SkylineGlobe等。 大多数在线虚拟地球都能将多种规范的空间信息和服务叠加显示在虚拟地球表面, 因而它们大都也属于一种地理浏览器。

NASA WorldWind是第一个被广泛使用的在线虚拟地球(于2004年发布)。 它能把美国国家航空航天局和 美国地质调查局 的卫星影像、航空影像、 地形图及互联网上其他来源的地图服务叠加显示。(致谢:美国国家航空航天局和 美国地质调查局 )

Fig. 2.7 NASA WorldWind是第一个被广泛使用的在线虚拟地球(于2004年发布)。 它能把美国国家航空航天局和 美国地质调查局 的卫星影像、航空影像、 地形图及互联网上其他来源的地图服务叠加显示。(致谢:美国国家航空航天局和 美国地质调查局 ) #

2.2.4. 面临的挑战 #

与传统桌面GIS相比,WebGIS应用系统面临着一些限制瓶颈(图2_ 8), 主要表现在以下几个方面:

  • GIS服务器需要支撑多用户频繁访问的压力;

  • 地理数据库需要支撑频繁数据读写的压力;

  • Internet需要支撑频繁传递大量数据的压力;

  • 客户端(特别是Web浏览器)GIS的功能不足;

  • 最终用户往往缺乏GIS专业知识和经验。

面临上述挑战,本书后面内容将要详细介绍多种解决方案,其中包括Web服务的优化, 如预先缓存、算法和系统优化、负载均衡以及高效使用互联网带宽等(见第3.5节); 服务器与客户端间的工作分工(见第2. 3节);用户体验设计原则等(见第2.4节)。

与传统上单机运行的桌面GIS相比,WebGIS面临一些瓶颈和压力, 他们是WebGIS应用开发中需要考虑的重要因素

Fig. 2.8 与传统上单机运行的桌面GIS相比,WebGIS面临一些瓶颈和压力, 他们是WebGIS应用开发中需要考虑的重要因素 #

《地理信息系统原理、技术与方法》  97

最近几年来,地理信息系统无论是在理论上还是应用上都处在一个飞速发展的阶段。 GIS被应用于多个领域的建模和决策支持,如城市管理、区划、环境整治等等,地理信息成为信息时代重要的组成部分之一; “数字地球”概念的提出,更进一步推动了作为其技术支撑的GIS的发展。 与此同时,一些学者致力于相关的理论研究,如空间感知、空间数据误差、空间关系的形式化等等。 这恰好说明了地理信息系统作为应用技术和学科的两个方面,并且这两个方面构成了相互促进的发展过程。