Esri 中国信息技术有限公司 · 2019-02-23 · 版权申明 版权归Esri所有...

42
Esri 中国信息技术有限公司

Transcript of Esri 中国信息技术有限公司 · 2019-02-23 · 版权申明 版权归Esri所有...

Esri 中国信息技术有限公司

版权申明

版权归Esri所有

由Esri中国信息技术有限公司翻译编

在该资料中所包含的内容均属于Esri财产。此著作受到美国版权法 和其他国际版权条约及惯例所保护。

不得以任何方式、任何文字或图片作全部和局部变更、发行、复制、转载、引用除非注明由Esri编写。所有

疑问都可反馈到Esri的合同及法律服务管理部,地址:380 New York Street,Redland,CA 92373-8100USA

该资料如有变更恕不另行通知

Esri 、 the Esri globe logo、 ArcGIS 、 ADF 、 ArcGIS Desktop 、 ArcPad 、 ArcWeb 、 StreetMap 、ArcGIS

Enterprise 、 ArcGIS Online 、ArcM a p 、A r c X M L 、 A r c O b j e c t s 、 A r c S D E 、 J T X 、 A r c E x p l o r e r 、 A r c G l o b e 、

ArcToolbox、 ArcCatalog 、 ModelBuilder 、 SDE 、 Spatial Database Engine 、 www.esri.com、 www.arcgis.com

和@esri.com是Esri在美国、欧盟和其他地区的商标、注册商标或服务标志。本资料提及的其他的公司和产品都已由

各自的商标拥有者注册。

目录

一、 ArcGIS GIS Server ................................................................ 2

1. ArcGIS GIS Server 概述 .................................................................................. 2

2. ArcGIS GIS Server 架构 .................................................................................. 2

3. ArcGIS GIS Server 主要功能 .......................................................................... 4

4. ArcGIS GIS Server 产品级别 .......................................................................... 5

5. ArcGIS GIS Server 服务类型 .......................................................................... 7

6. ArcGIS GIS Server 扩展模块 ........................................................................ 26

7. ArcGIS GIS Server 自定义扩展开发 ............................................................ 37

ArcGIS 10.5 产品白皮书

2

一、 ArcGIS GIS Server

1. ArcGIS GIS Server 概述

ArcGIS GIS Server 是一款可以独立部署的服务器产品,可以将地理资源转化为在

线服务,这些资源包括地理制图、地理编码、地理处理、3D 地理数据、要素编辑、网

络分析、OGC 支持、数据访问、移动数据提取等。这些在线资源可以供用户通过桌面、

Web、移动等多客户端使用。

ArcGIS GIS Server 是 ArcGIS Enterprise 的核心组件,作为 Web GIS 平台的托管服

务器,是实施 Web GIS 平台不可缺少的服务器产品。

2. ArcGIS GIS Server 架构

ArcGIS GIS Server 采用站点模型,通过松散的、热插拔式点对点的方式,灵活控

制和管理各个 GIS Server 节点,ArcGIS GIS Server 站点包含以下组件:

ArcGIS 10.5 产品白皮书

3

ArcGIS GIS Server 站点架构图

客户端 — 客户端可以使用 ArcGIS GIS Server Internet 服务或 ArcGIS GIS Server

本地服务创建 Web 应用程序、移动应用程序和桌面应用程序。ArcGIS GIS Server 包括

两种指定的客户端应用程序开发框架:1)Web APIs,2)ArcGIS Runtime SDKs。

GIS 服务器 — GIS 服务器用于托管 GIS 资源(例如地图、地理处理工具和地址定

位器等)并将它们作为服务呈现给客户端应用程序。当客户端应用请求某种特定服务时,

GIS 服务器产生响应并且将其返回到客户端应用。GIS 服务器可以是一台计算机,也可

以是多台计算机。GIS 服务器可以配置集群,每个集群专注于运行某项工作,以高效稳

定处理多并发请求。

Web Adaptor — Web Adaptor 用于整合 GIS 服务器与现有的企业级 Web 服务器。

Web Adaptor 通过 URL(通过您选择的端口和网站名称)接收 Web 服务请求并将这些

请求发送到站点中的 GIS 服务器。

还可以通过 HTTP 负载均衡器、网络路由器、或第三方负载均衡软件来公开站点。

ArcGIS 10.5 产品白皮书

4

在某些情况下,Web Adaptor 更加适合与现有负载均衡方案联合使用。

Web 服务器 — Web 服务器用于托管 Web 应用程序,并为 ArcGIS GIS Server 站点

提供可选的安全和负载均衡能力。如果只需要简单地托管 GIS 服务,则可使用安装

ArcGIS GIS Server 后创建的站点。

如果不只是简单地托管服务,还需要使用您所在组织的现有 Web 服务器,则可安

装 Web Adaptor。使用 Web Adaptor 可以将 ArcGIS GIS Server 站点与 IIS、WebSphere、

WebLogic 以及其他 Web 服务器集成在一起。

数据服务器 — 数据服务器包含在 GIS 服务器上作为服务进行发布的 GIS 资源。

这些资源可以是地图文档、地址定位器、Globe 文档、地理数据库和工具箱。

3. ArcGIS GIS Server 主要功能

ArcGIS GIS Server 用于托管 GIS 服务,根据提供的服务类型,可将其功能概括为

以下几点:

支持具有空间能力的数据库——ArcGIS GIS Server 支持对包含空间类型的商业

数据库中的空间数据进行直接操作。通过 ArcGIS GIS Server 可以将数据发布

为成多种类型的服务,以供桌面、Web 浏览器和移动设备等各种终端访问。

空间数据管理——ArcGIS GIS Server 通过两种级别的地理数据库来管理空间数

据,它们基于相同的 ArcGIS Geodatabase 模型(工作组级和企业级)。管理员

可以对发布的地理数据实现抽取,检入/检出(check-in/check-out)以及复制等

管理操作。

创建和管理 GIS Web 服务——ArcGIS GIS Server 提供多种遵循 REST、SOAP

及 OGC 标准的 Web 服务,包括二三维地图服务、矢量切片服务、影像服务、

要素服务、地理处理服务等多种服务类型。并支持使用 Server Object Extention

(SOE)和 Server Object Interceptors(SOI)进行服务自定义扩展,用来满足

用户的不同需求。通过 Web 服务向桌面端、Web 端和移动端提供丰富 GIS 功

能。

移动应用程序——ArcGIS GIS Server 支持 iOS、Android、Windows Phone、

Windows 等主流移动平台。开发人员可以使用相应的开发工具包创建自定义

ArcGIS 10.5 产品白皮书

5

移动应用。

在线编辑——利用 ArcGIS GIS Server 可以将存储在企业级空间数据库或原生关

系数据库中的空间和属性数据发布为要素服务,然后在桌面端、Web 端或者

移动端进行在线数据编辑。

可视化 3D 内容——3D 视图能表达地形的高低起伏,或者像树、建筑物、地下

地质情况等三维要素的范围。另外,对量化的 GIS 内容,如人口、温度或者

相对出现的事件等,进行 3D 控件的展示会显著提高效率。ArcGIS GIS Server

支持两种类型的 Web 服务来实现 3D 可视化: Scene Service 和 Global Service。

空间分析和地理处理——ArcGIS GIS Server 提供了基于服务器的分析和地理处

理,如网络分析;还支持通过 ArcGIS 创建的地理处理模型、脚本和工具。

4. ArcGIS GIS Server 产品级别

ArcGIS GIS Server 依据其功能和服务器规模差异,提供了一个可伸缩的产品线。

1)ArcGIS GIS Server 从功能上分为三个级别:基础版、标准版、高级版。各版本

的功能依次增强,站点中的每台计算机都必须应用同一个 ArcGIS GIS Server 许可版本。

基础版-基础版可以实现空间数据的管理和要素服务发布以进行地图可视化和查

询(不支持编辑)功能。还可以使用几何服务和发布地理数据服务。此版本不能

参与 ArcGIS Enterprise 基础部署。

标准版-标准版包含了基础版所有功能,并且支持所有 ArcGIS GIS Server 提供的

服务类型,还可以使用要素服务对数据进行 Web 端编辑,并使用 ArcGIS Desktop

标准版中包含的任何工具发布地理处理服务。包含逻辑示意图功能,可购买若干

其他扩展模块。此版本可参与 ArcGIS Enterprise 基础部署。

高级版-高级版包含了标准版的所有功能,并且可以使用 ArcGIS Desktop 高级版

中包含的任何工具发布地理处理服务。包含用于地统计模型的其他功能和空间分

析工具。可选择购买其他所有扩展模块。此版本可参与 ArcGIS Enterprise 基础部

署。

服务器能力 高级版 标准版 基础版

ArcGIS 10.5 产品白皮书

6

访问、创建、更新、编辑逻辑示意

包含 包含 —

能够被设置为托管服务器 包含 包含 —

地理数据库管理 包含 包含 包含

地理数据库访问权限 包含 包含 包含

与 Portal for ArcGIS 的联合托管 包含 包含 包含

支持 OGC Web 服务 包含 包含 包含

运行高级 GP 工具* 包含 — —

运行自定义 GP 工具 包含 包含 —

时空分析 包含 包含 —

可视化 3D 内容 包含 包含 —

Web 编辑 包含 包含 —

*高级 GP 工具指 ArcGIS Desktop 高级版中所有的 GP 工具以及空间分析、地统计分析和 3D 分析

扩展模块中的所有工具

2)从服务器规模上分:按 ArcGIS GIS Server 的容量分为工作组和企业级两个级别

的版本

容量级别

工作组 企业级

对多用户地理数据库的并发访问数量 10 无限制

多用户地理数据库的存储容量 10GB* 无限制

最大的可授权内核数量 4 个内核 无限制

ArcGIS GIS Server 组件分布式部署 不支持** 支持

* ArcGIS GIS Server 工作组级装载了最大容积为 10GB 的 SQL Server Express 2012。

**工作组级别的组件只能在一台机器上安装。

ArcGIS 10.5 产品白皮书

7

ArcGIS GIS Server 版本和级别决定了功能和容量。例如,ArcGIS GIS Server 企业

级标准版支持无限制的并发连接,大型多用户地理数据库以及标准版的系列功能。用户

需要根据实际需求和应用场景,选择相应版本的产品。

5. ArcGIS GIS Server 服务类型

将 GIS 资源发布为服务是使该资源可供其他用户使用的关键。根据资源类型的不

同,资源会被发布成不同类型的服务,各种客户端通过服务实现对 GIS 资源的访问和

管理。

在 10.5 中,可发布的服务类型取决于为 ArcGIS Server 的许可角色(5 种角色分别

为 ArcGIS GIS Server,ArcGIS Image Server,ArcGIS GeoEvent Server,ArcGIS

GeoAnalytics Server,ArcGIS Business Analyst Server),您授予许可的 ArcGIS Server 的

角色将决定可用的功能。

下表总结的是 ArcGIS GIS Server 许可角色可以发布的服务类型,以及每项服务所

需的 GIS 资源:

服务类型 所需的 GIS 资源

地图服务 地图文档 (.mxd)

影像服务

单独栅格数据集或者引用栅格数据、图层文件、镶嵌数据集。(镶嵌数据集

发布服务需要安装 ArcGIS Image Server 并授权)

矢量切片服务 矢量切片包(vtpk)

要素服务 矢量的地理数据

场景服务 三维图层数据包(SLPK)

流服务 GeoEvent 服务组件(需要安装 ArcGIS GeoEvent Server 并授权)

地理处理服务 ArcGIS Desktop 中来自结果窗口的地理处理结果

地理编码服务 地址定位器(.loc、.mxs、SDE 批量定位器)

地理数据服务 地理数据库的文件地理数据库或数据库连接文件 (.sde)

移动数据服务 首先创建一个包含要访问的数据的地图文档,然后将地图文档共享为一个

ArcGIS 10.5 产品白皮书

8

地图服务并启用“移动数据访问”功能。

网络分析服务 服务使用 Network Analyst 扩展模块对网络数据集执行分析。

KML 服务 地图文档(.mxd)

OGC 服务 地图文档(.mxd)不同的 OGC 服务对应不同的地图文档

搜索服务 想要搜索的 GIS 内容所在的文件夹和地理数据库

几何服务 在安装 ArcGIS GIS Server 时,会在 Utilities 文件夹中自动创建几何服务。

逻辑示意图服务 Schematics 服务允许 Web 应用程序通过 Web 服务访问逻辑示意图

5.1. 地图服务

地图服务提供对 ArcMap 文档(.mxd)内容的访问。创建地图服务之前,必须在

ArcMap 中首先创建一个地图文档,然后发布为地图服务。

创建地图缓存

地图缓存是使地图和图像服务更快运行的一种非常有效的方法。创建地图缓存时,

服务器会在若干个不同的比例级别上绘制整个地图并存储地图图像的副本。然后,服务

器可在客户端请求使用地图时分发这些图像。对于服务器来说,每次请求使用地图时,

返回缓存的图像要比绘制地图快得多。缓存的另一个好处是:图像的详细程度不会对服

务器分发副本的速度造成显著影响。

地图缓存保存了一系列比例尺下的地图数据,每个比例尺对应一定详细程度和分辨

ArcGIS 10.5 产品白皮书

9

率的地图信息。在构建应用之前,一个好的设计首先要确定使用哪些比例尺,以及包含

何种详细程度的地图信息。ArcMap 和它所包含的按比例地图显示功能可以用来生成和

维护高性能的地图缓存。

ArcGIS GIS Server 提供了完全可视化的地图缓存定义体验,如 ArcGIS 会自动检查

地图比例尺,并建议最小和最大切图比例尺,并提供滑动条来调整该范围;创建切片可

以在服务发布后自动创建,也可以服务发布后手动创建,更加灵活自由;切片图片支持

多种格式,如 PNG/PNG8/PNG24/PNG32/TPK/TPK2.0 等,在不影响可视化质量的前提

下可减少缓存占用空间;

ArcGIS 10.5 产品白皮书

10

缓存属性定义

提供切片占用空间估算工具,可以进行近似估算,也可以进行精确估算,同时提供

使用要素类估算感兴趣区域的切片大小。

提供切片大小精确估算

ArcGIS 10.5 产品白皮书

11

提供预配置的 CachingTools GP 服务,通过它来创建缓存切片,该服务在创建站点

时已经配置好,可以将它运行于某个集群中,从而提高服务响应效率。另外还提供查看

切片完成状态、切片状态空间统计报表等功能,使用户可以对切片创建过程有所把握,

并能进行精细控制与管理。

查看切片完成状态

处理多个切片任务时,为了提高稳定性防止服务器垮掉,ArcGIS GIS Server 内置

了一个 CachingControllers 服务,这个 GP 服务可以控制同时提交缓存操作的个数,该

工具的最大实例数表示可以同时提交的缓存操作个数,如果提交的缓存操作个数大于

CachingControllers 的实例数,那么就会有排队。

ArcGIS 10.5 产品白皮书

12

CachingController 服务用于管理多个缓存作业

可扩展的地图服务功能

地图服务是最常用的 ArcGIS 服务。它包含一组可选的功能:

提供要素

地图服务并不总是需要显示图像。建立地图服务的目的还可以是在应用程序中返回

一组要使用的要素。用户可以通过添加至应用程序中的任务来检索这些要素。

例如,用户可能要查询地图服务,并将所得到的结果要素显示为地图中的图形。此

查询可以表达为“提供名称中含有‘Delaware’的所有要素”或“提供长度超过 100 英里的

所有要素”。

如果用户希望建立一个地图服务来提供要素,应确保可进行“查询”和“数据”操作。

具体请参阅下文的要素服务。

提供网络分析功能

用户可建立地图服务以基于服务器执行网络分析。如果用户的地图文档中包含网络

分析图层,则用户在发布该服务时将会看到可启用的网络分析功能。然后,用户便可以

在使用 ArcGIS GIS Server 开发应用程序时执行网络分析操作。用户可在地图文档中设

置分析的默认属性,例如设施点和障碍。有关入门知识,请参阅下文的网络分析服务。

通过 KML 提供地图或要素

KML 是一种基于 XML 的开放式结构来表示地理数据和地图的方式。KML 通常

用在地理浏览器应用程序(例如 ArcGIS Explorer Desktop 和 Google 地球)中以显示

地图叠加或要素,其属性有时会显示在信息性弹出窗口中。默认情况下,所有地图服务

均可返回 KML。有关详细信息,请参阅下文的 KML 服务。

ArcGIS 10.5 产品白皮书

13

通过 OGC 规范提供图像、要素或栅格

开放地理空间联盟(OGC)发布了在 Web 上提供地图图像 (WMS)、矢量要素

(WFS)、栅格数据集 (WCS) 和 Web 地图切片 (WMTS) 的规范。一些组织规定其地理

数据和地图必须通过这种方式提供。地图服务可配置为返回符合 OGC 规范的图像或

数据。有关详细信息,请参阅下文的 OGC 服务一节。

提供移动设备所需的地图

用户可对地图服务进行配置,从而使外业工作人员能够将地图中的数据提取至移动

设备。发布地图时,用户可以选择 “移动数据访问” 功能。这样,移动设备便可通过

Web 服务来访问该地图。有关详细信息,请参阅下文的移动数据服务。

5.2. 影像服务

影像服务可以将影像和栅格快速发布成 Web 服务,它可以用于可视化和分析。影

像服务数据源既可以是单个影像,也可以是镶嵌数据集中的影像集合。ArcGIS GIS

Server 只支持单景影像发布服务,基于镶嵌数据集发布影像服务需要安装 ArcGIS

Image Server 产品并进行授权。

影像服务能够定义实时动态处理能力,如正射校正、全色融合、山体阴影及波段运

算。它们也可用于执行处理,无需预处理就可将原始影像转换为不同产品。同一影像源

可以生成多种影像产品。影像服务可以通过影像服务 API 来进行访问。

一个影像数据集发布成服务除了影像服务类型(Image Server 和 WCS)以外还可以

发布成 Map Server 和 WMS,影像类型的服务特点在于,它不仅把影像服务作为一个图

片进行加载,还保留和很多影像数据特有的信息,比如多波段信息等,下图表示不同类

型的服务对于影像信息服务能力的区别:

功能 详细信息

影像

始终启用。允许显示影像。

通常在服务器端进行渲染(但是,ArcGIS Desktop 可在客户端进行渲染)。

主要用于显示功能,不能分析。

WCS

可选择性启用。

允许访问影像数据。

在客户器端进行渲染(由应用程序执行)。

WMS 可选择性启用。

允许访问图片形式的影像。

ArcGIS 10.5 产品白皮书

14

在服务器端进行渲染。

可用于显示。

地图服务

可选择性启用。

允许访问图片形式的影像。

在服务器端进行渲染。

可用于显示。

缓存影像服务

仅当必须创建包含高效显示的影像服务时,才需要进行缓存操作。通常来说,为栅

格数据集生成的金字塔可确保以可接受的速率来提供影像数据。但是,如果用户知道某

一感兴趣区影像将被重复多次地访问,可生成缓存。

用户可以直接对影像服务进行缓存,也可以对包含栅格数据或影像服务的地图服务

或 Globe 服务进行缓存。除非需要对地图服务或 Globe 服务的所有内容进行缓存,通

常情况下,建议仅对矢量数据进行缓存,而不缓存影像数据(特别是在包含影像服务时)。

具体操作参考地图服务缓存操作。

5.3. 矢量切片服务

矢量切片是一种利用协议缓冲(Protocol Buffers)技术的紧凑的二进制格式用来传

递信息。当渲染地图时矢量切片使用一系列储存的内部数据进行制图。被组织到矢量切

片的图层(比如道路、水、区域),每一层都有包含几何图形和可变属性的独立要素(例

如姓名、类型等)。

矢量切片是在 ArcGIS 10.4 新增加的一种地图服务格式,矢量数据通过 ArcGIS Pro

的矢量切片包发布到连接的 Portal for ArcGIS 或者 ArcGIS Online 上,从而在 Portal for

ArcGIS托管的ArcGIS GIS Server上增加了一个矢量切片的服务。这个服务可以在 Portal

for ArcGIS 上浏览并且可以被 ArcGIS API for JavaScript、ArcGIS Runtime SDKs 等调用。

5.4. 要素服务

要素服务可用来通过 Web 提供要素,并提供显示要素时所要使用的符号系统。之

后,客户端可执行查询操作以获取要素,并执行相应的编辑操作。要素服务提供了可用

于提高客户端编辑体验的模板。此外,要素服务也可以对关系类和非空间表中的数据进

ArcGIS 10.5 产品白皮书

15

行查询和编辑。要创建要素服务,先创建地图文档,发布启用了要素访问的地图文档,

然后使用 Web 和 ArcGIS Desktop 客户端访问该服务。

ArcGIS GIS Server 通过要素服务为客户端提供矢量数据

要将要素服务发布到 ArcGIS GIS Server,只需发布地图服务并启用其要素访问功

能。这会生成使用要素服务时所需的 URL。地图服务控制要素服务存在。如果地图服

务关闭,则要素服务也会随之关闭。

5.5. 场景服务

场景服务是 ArcGIS GIS Server 的一种全新服务类型,是一种在线 3D 场景服务。

通过在线场景服务向 Web 端和组织机构分享 3D 内容。Web 场景与 Web 地图概念相似。

Web 地图通过 2D 地图或要素服务实现,而 Web 场景则需要通过 3D 场景服务实现,并

可以访问 ArcGIS Pro 创建的 3D 内容。使用 Web 场景的客户端包括 Portal for ArcGIS 和

Web Scene Viewer。

ArcGIS 10.5 产品白皮书

16

多个客户端访问三维场景地图

5.6. 流服务

由于提供实时数据流的数据源越来越多,应用中使用这些实时数据并立即进行展示

也越来越重要。传统做法先将数据流存储在企业级空间数据库的要素类中,客户端可定

期轮询要素服务来获取数据用于展示,这会带来一定的延迟,这种方式也被证明存在问

题,特别是在处理大容量的数据流时。

因此需要对现有实时数据处理模式进行改变。考虑数据持续性,需要将实时数据流

进行归档处理,同时并行实时推送到客户端。Esri 为此提供了全新的服务类型—流服务。

流服务的发布与使用需要安装 ArcGIS GeoEvent Server 产品并进行授权。

流服务强调客户端/服务器端数据流的低延迟及实时数据传播。连接流服务的客户

端在订阅该服务时立即获取数据。客户端能指定并重新配置空间和属性约束,不用先取

消订阅然后重新连接服务。

流服务利用 Websocket 技术,Websocket 支持全双工双向通信。这就使得客户端能

够指定需要的数据进行接收,而无需取消订阅并重新建立与服务的连接。客户端可以指

定空间及属性条件对数据进行过滤。

通过流服务接收实时数据流将事件即时可视化与向数据库持续存储的需求分开处

理。通过配置流服务作为 GeoEvent output 来传播事件数据,同时也可以选择在企业级

ArcGIS 10.5 产品白皮书

17

数据库归档或持续存储事件数据,当然这不是数据可视化的必要条件。

下图对比了传统方式如何接收、处理、使用要素数据以及使用流服务如何接收、传

播实时数据。从图上可以看到,在流服务之前,实时 GIS 数据必须通过要素类,需要

企业级数据库。客户端应用要展示这些数据,必须定期轮询要素服务获取最新数据来更

新要素。图的下半部分展示的是流服务如何接收实时 GIS 数据并通过 Websocket 将数据

即时推送给客户端的。

流服务工作原理示意图

5.7. 地理处理服务

地理处理的基本目的是为了帮助你自动完成 GIS 任务。几乎所有应用 GIS 的地方

都会包含一些需要重复执行的工作。因此产生了构建一个地理处理框架的需求,在这个

框架下,支持多步骤任务的定义和自动完成,支持工作流模型文档的编制,以及模型的

共享。地理处理还支持空间建模和空间分析功能,它可以让我们更好的理解,分析和把

握问题的方方面面。

ArcGIS GIS Server 提供一个简单的机制可以将服务器上的地理处理工具和模型发

布为任务,供远程的客户端调用,而任务本身在服务器端执行。

GIS 服务器提供的将地理处理模型和脚本发布为 Web 服务的能力,使得它变得异

常强大。这些功能可以被多种客户端访问和使用,而不用考虑到客户端应用的类型。

ArcGIS 10.5 产品白皮书

18

在上面的例子中,可以根据事故点进行电网故障追踪。这个功能是作为 ArcGIS

Explorer Desktop 中的一个任务提供的。通过 ArcGIS Explorer Desktop 向 ArcGIS GIS

Server 的地理处理服务发送请求,由 ArcGIS GIS Server 完成后台的分析。分析结果一

方面以图形方式显示在 3D 地图中,另一方面提供故障诊断报告,并进行故障点定位。

5.8. 地理编码服务

地理编码是将街道地址转换为空间位置,通常是以坐标值表示成点的过程。

许多用户需要使用自己的地理编码服务。在大多数情况下,通过常规的,商业提供

的地址编码应用,一般很难获得满意的结果,原因如下:

随着城市的发展与扩展,地址也随时间不断变化。

表达地址的形式多种多样,不仅仅是常规的地址表达方式:街道,门牌号附加相关

信息,如城市和邮政编码等;

许多国家和地区有自己的地址编码形式和方法;

许多用户需要通过标志地物名称查找地址(如,“天安门”);

有些地方使用一组数字代表特定的地理位置;

所有这些情况都要求有特殊的地址编码解决方案。许多 ArcGIS 的用户不得不将大

量的时间用于构建,维护和提供用户自定义的地址编码服务上,以满足用户的需求。

在ArcGIS GIS Server中增加地址编码服务必须首先在ArcGIS桌面创建一个地址定

位。地址定位是空间数据库的一个数据集,包含一组可设定地址的要素,地址样式和如

何进行地址匹配的规则。可以在 ArcGIS 中对地址定位进行更新和维护。

ArcGIS 10.5 产品白皮书

19

在 ArcGIS GIS Server 的地理编码服务中,通过 REST 查找地址和地理反编码的性

能得到极大的提升。

5.9. 地理数据服务

空间数据服务允许我们使用 ArcGIS GIS Server 通过 LAN,WAN 或 Internet 访问空

间数据库。该服务支持空间数据库的编辑,数据库复制,通过数据抽取下载拷贝,以及

对空间数据库的查询操作。空间数据服务可以使用任何类型的空间数据库,包括ArcSDE

空间数据库和文件空间数据库。但是从安全性,数据完整性,高性能和可伸缩能力方面

考虑,ArcSDE 空间数据库推荐使用企业级数据库。

空间数据服务可以用于在多个分布式 ArcSDE Geodatabase 间进行同步更新

当我们管理分布在不同位置的空间数据库时,空间数据服务尤其有用。例如,国土

资源部想要国家和各省的 ArcSDE 空间数据库进行数据同步。一旦建立数据库,省级国

土部门可以将 ArcSDE 空间数据库在 Internet 上发布为空间数据服务。然后我们可以通

过空间数据服务定期在 Internet 上进行同步更新,在两个数据库服务器间共享变化的部

分。

5.10. 移动数据服务

移动数据服务是一种地图服务的扩展服务,利用移动数据服务,ArcGIS Mobile 应

用程序可通过 Web 服务访问地图文档的源数据。要创建移动数据服务,用户需要首先

创建一个包含要访问的数据的地图文档,然后将地图文档共享为一个地图服务并启用

ArcGIS 10.5 产品白皮书

20

“移动数据访问” 功能。

创建移动数据的地图文档所要遵循的一个基本原则便是地图简单化。例如,应考虑

对背景图层和参考图层应用数据制图综合(例如对面进行平滑处理和降低栅格分辨率)。

这可加快地图的绘制速度。另外,由于设备的显示尺寸通常有限,因此建议简化地图的

符号系统。

尽管移动应用程序支持多种数据格式的显示,但只有企业级地理数据库数据能够使

移动应用程序向服务器提交更新。

5.11. 网络分析服务

用户可能已经使用过 Web 应用程序来获得两点之间的行进路线或根据输入的地址

列出附近的设施点(如诊所)。这些应用程序正是使用服务器上的网络分析功能,根据

用户所提供的信息找到合适的路径及设施点。使用户不必在计算机上安装任何专用的网

络分析软件便可得到所需的结果,因为服务器会替用户完成此项工作并通过 Web 服务

将结果返回。

用户可以使用 ArcGIS GIS Server 托管类似的服务来执行交通网络分析操作,例如

查找最近设施点、车辆的最佳行进路线、车队的最佳行进路线;使用位置分配定位设施

点;计算 OD 成本矩阵以及生成服务区。这些服务使用 Network Analyst 扩展模块对

网络数据集执行分析。

ArcGIS 10.5 产品白皮书

21

创建网络分析服务的第一步是使用 ArcMap 创建一个包含网络分析图层的地图文

档。然后将地图发布为服务,并确保启用 “网络分析” 功能。用户可以利用 ArcGIS 附

带的各种工具来使用生成的服务。

5.12. KML 服务

Keyhole Markup Language (KML) 是一种基于 XML 的文件格式,可用于表示应用

程序(如 ArcGIS Explorer Desktop 和 Google Earth)中的地理要素。KML 允许用户在

地图与 globe 上绘制点、线和面,并与他人共享这些信息。用户也可使用 KML 来指

定文本、图片、电影或者用户单击要素后出现其他的 GIS 服务的链接。许多 KML 客

户端应用程序都是免费的,可提供令人熟悉的用户友好型导航体验。

使用 ArcGIS GIS Server,用户可通过多种方式将地图与数据共享为 KML:

地图与影像服务通过表述性状态转移 (REST) 显示 KML 网络链接。

可以使用管理器或服务目录来创建用户自己的 KML 网络链接。

当用户查询地图图层或者通过 REST 进行地理处理或地理编码操作时,可以获

得 KML 形式的结果。

所有这些情况下,KML 都是动态生成的,这意味着:查看 KML 的用户将始终能

够从服务器上看到最新的地图与数据。如果只是想生成可通过电子邮件发送或者放置在

文件服务器上的静态 KML 文档,用户可以使用 ArcGIS Desktop 中的地图转 KML 与

图层转 KML 工具。

以下是 KML 服务所支持的功能列表:

生成 KML 2.2 兼容的 KML

通过 REST 的 KML 自动可用性

ArcGIS 10.5 产品白皮书

22

使用 KML 区域通过 REST 显示缓存的地图服务

影像服务的 KML 可用性

作为通过 REST 的 KML 的服务轮廓可用性

支持大多数 ArcMap 标注功能

关闭标注功能

5.13. OGC 服务

开放地理空间联盟 (OGC)Web 服务能够使地图和数据以国际公认的开放格式在

Web 上可用。OGC 定义了相关规范,安装有支持此规范的客户端应用程序的任何人均

可在 Web 上使用地图和数据。所有开发人员均可免费使用 OGC 规范来创建此类受支

持的客户端。某些情况下,客户端可能如同 Web 浏览器一样简单。其他情况下,它可

能是如同 ArcMap 一样的丰富客户端。

OGC 定义了多种服务类型,分别用于提供不同类型的数据和地图。ArcGIS Desktop

允许发布以下类型的 OGC 服务:

Web 地图服务 (WMS),用于以地图图像的方式提供一组图层

Web 地图切片服务 (WMTS),用于以缓存地图切片的形式提供地图图层

Web 要素服务 (WFS),用于以矢量要素的形式提供数据

网络覆盖服务 (WCS),用于以栅格 coverage 的形式提供数据(不要与 ESRI 的

ArcInfo coverage 格式相混淆)

网络处理服务 (WPS),用于提供地理空间处理功能

可通过对特定类型的 ArcGIS GIS Server 服务启用相应的功能来发布这些服务。创

建服务时,用户必须显式启用 OGC 功能;默认情况下它们并未启用。

下表列出了哪些服务类型可提供 OGC 功能:

WCS WFS WMS WMTS WPS

地图服务 √ √ √ √

地理数据服务 √ √

ArcGIS 10.5 产品白皮书

23

影像服务 √ √ √

地理处理服务 √

5.14. 搜索服务

搜索服务可对企业内的 GIS 内容和文件夹进行索引,支持用户快速查找。企业内

用户可使用 ArcGIS Desktop 中更新的搜索界面,连接搜索服务,查找有用的内容,并

可将查找到的内容拖放到地图窗口进行浏览。

搜索服务非常有用,尤其是在数据量非常大,数据源多,比如数据分散在多个文件

夹和数据库中时,搜索服务能提高用户的工作效率。通过搜索服务可以实现多源搜索,

支持对本地文件,Geodatabase 和 Web 服务等各种空间信息源进行索引;搜索服务能够

实现分类搜索,支持对工具、地图、数据等不同资源分类查询。

ArcGIS GIS Server 中提供了预先配置的搜索服务,可用于在局域网中为用户机构

里的 GIS 数据创建一个可搜索的索引。搜索服务对于大型的企业级环境尤其有益,这

里的数据被分布式存储在多个空间数据库和共享文件中。

ArcGIS GIS Server 的管理界面开启搜索服务

ArcGIS 10.5 产品白皮书

24

通过搜索服务查询结果

5.15. 几何服务

ArcGIS GIS Server 提供预配置的,可部署的几何服务,可用于执行几何计算,如

缓冲区、简化、面积长度计算,以及投影等。此外, ArcGIS Web APIs 构建 Web 应用

可以通过 REST 方式引用该几何服务,以提供几何计算功能。

几何服务提供了几个新的选项,用于计算缓冲区、面积和长度。当使用缓冲区方法

时,可以选择大地测量(Geodesic)缓冲区。这样将在计算缓冲区时考虑地球的实际形

状。此外,在计算矢量要素的面积和长度时,将地图的坐标系统纳入考虑是非常重要的。

因此,length 和 areasAndLength 方法引入了新的计算类型:

平面(Planar)— 平面量算使用二维笛卡尔数学方法计算面积和长度。多数情况

下,使用大地测量或保持形状方式将更为精确。

大地测量(Geodesic)— 在大地测量计算中,多边形(或多义线)的每对节点之

ArcGIS 10.5 产品白皮书

25

间的线段被当做是地球表面最短的路径。如果没有为面积或长度定义单位,则结果将以

米作为单位。如果用户想知道某个几何图形的大地测量长度或面积,则可以使用本类型。

如果用户想计算绘制在地图上的几何图形长度或面积,请使用 PreserveShape。

保持形状(PreserveShape)— 在保持形状的计算中,多边形(或多义线)的面积

和长度将在地球椭球体的表面进行计算。几何体的图形在其坐标系下保持不变。这意味

着将忽略地图的坐标系(地理或投影),绘制在地图上的几何体的形状在计算长度和面

积时始终保持不变。例如,如果你在平面的世界地图上绘制一条长线,大地测量方法将

给出两个端点之间沿地球表面的最短路径的长度,而 PreserveShape 方法将给出沿着你

实际绘制的线的距离(即使可能不是两端点间的最短距离)。

5.16. 逻辑示意图服务

逻辑示意图服务允许我们通过 Web 服务访问示意图。此服务使用示意图扩展功能

的访问,创建,更新,编辑示意图。

通常在电力、通信、市政管线、石油等设施管理类中应用较多。一方面,用户可以

将各类设施网络数据在一定的坐标系统中按照实际的空间位置生成严格意义上的地图

专题图层,这种数据对网络规划、设施维护、故障定位、客户服务等与空间位置相关的

引用中,特别是在空间分析方面特别有用;另一方面,对设施网络的规划和管理人员,

在实际工作中只关心网络的逻辑关联关系,而忽略其对应的实际地理位置,需要方便、

高效地生成与地理图的逻辑示意图,并且要求在地理图和逻辑示意图之间自由关联和切

换。

ArcGIS 10.5 产品白皮书

26

逻辑示意图

6. ArcGIS GIS Server 扩展模块

ArcGIS GIS Server 有一系列的可选扩展,补充其核心系统的能力。功能和扩展可

用性取决于您所购买的 ArcGIS GIS Server 许可版本。例如,您的版本默认提供一些功

能,可以购买其他扩展模块。ArcGIS GIS Server 具有三个功能级别的版本,其中 ArcGIS

GIS Server 基础版不提供任何扩展模块,ArcGIS GIS Server 标准版和 ArcGIS GIS Server

高级版的包含情况和可购买的扩展模块又有所不同,具体见下表:

扩展和其它产品 标准版 高级版

ArcGIS Schematics for Server(逻辑示意图分析) 包含 包含

ArcGIS Spatial Analyst for Server(空间分析) _ 包含

ArcGIS 3D Analyst for Server(3D 分析) _ 包含

ArcGIS Geostatistical Analyst for Server(地理统计分析) _ 包含

ArcGIS Network Analyst for Server(网络分析) 可选 包含

ArcGIS for INSPIRE 可选 可选

ArcGIS Data Interoperability for Server(数据互操作)* 可选 可选

ArcGIS 10.5 产品白皮书

27

ArcGIS Data Reviewer for Server(数据质检)* 可选 可选

ArcGIS Workflow Manager for Server(工作流管理) 可选 可选

ArcGIS for Maritime:Server(互联网海图管理)* 可选 可选

Esri Defense Mapping for Server(国防制图)* _ 可选

Esri Production Mapping for Server(地图生产)* 可选 可选

Esri Roads and Highways(道路和高速公路)* 可选 可选

ArcGIS Pipeline Referencing(管道)* 可选 可选

*表示仅支持 Windows 系统

6.1. 逻辑示意图分析扩展

可利用逻辑示意图服务与组织内部员工和组织外部人员共享逻辑示意图集合信息。

逻辑示意图可用于执行以下操作:

自动生成逻辑示意图和管理物理和逻辑网络,例如社会网络。

表示各类网络,如电网、交通指示灯网、货运路线网和计算机网络等。

逻辑示意图在 ArcGIS GIS Server 中作为服务器对象扩展 (SOE) 提供。您可以发布

在 ArcMap 中创建的逻辑示意图内容,然后在客户端应用程序中的 Web 上显示该内容。

有关详细信息,请参阅 ArcMap 中的逻辑示意图和逻辑示意图服务。

ArcGIS 10.5 产品白皮书

28

逻辑示意图

6.2. 空间分析扩展

ArcGIS GIS Server 高级版具有来自 Spatial Analyst 的高级栅格数据分析和表面生

成功能。

Spatial Analyst 提供 150 多个工具和功能,您可以将它们嵌入到 Web 应用程序中

进行即时分析,包括适宜性建模、距离和方向计算以及水文建模。

可以通过 ArcGIS Spatial Analyst for Desktop 扩展模块创建高级工具和模型,使用

ArcGIS GIS Server 将这些服务共享到桌面、移动和 Web 应用程序中。

ArcGIS 10.5 产品白皮书

29

空间分析成果

6.3. 3D 分析扩展

ArcGIS GIS Server 高级版包括 3D 数据分析和表面生成功能。

与 3D 数据进行交互能够深入了解无法通过 2D 了解的内容。显示 3D 要素、

Terrain、地下和体积视图的栅格数据、矢量数据和激光雷达数据。

使用可以执行复杂表面分析、体积分析和可视性分析的工具对真实 3D 空间中的

GIS 数据进行分析(包括 Terrain 分析、地下和大气要素建模以及适宜性选址)。

通过 ArcGIS 3D Analyst for Desktop 扩展模块创建高级工具和模型,使用 GIS

Server 将这些服务共享到桌面、移动和 Web 应用程序中。

3D 通视分析

6.4. 地理统计分析扩展

ArcGIS GIS Server 高级版可以共享具有统计学意义的预测服务,以便进行 GIS 建

ArcGIS 10.5 产品白皮书

30

模和可视化。

使用统计模型创建随机训练或测试数据子集,这些数据子集能够帮助您识别数据

异常、探究空间数据并生成更准确的结果。

检查实际问题,包括大气数据分析、石油和矿产勘探、环境分析、精细农业以及

鱼类和野生动物研究。

通过 ArcGIS Geostatistical Analyst for Desktop 扩展模块创建高级工具和模型,使

用 ArcGIS GIS Server 将这些服务共享到桌面、移动和 Web 应用程序中。

地统计分析

6.5. 网络分析扩展模块

ArcGIS Network Analyst 通过 Web 服务提供高级网络数据分析功能。

部署功能强大的网络分析工具,例如多点优化路径选择、时效性、分段行驶方向、

服务区域分配和到最近设施点的最快固定路径。

为包括分析师、专业工作人员和决策人员在内的更多人提供复杂的网络建模功

能,无论这些人是否掌握 GIS 知识或技能。

从桌面创建高级工具和模型,使用 ArcGIS GIS Server 将这些服务共享到桌面、

手机和 Web 应用程序中。

有关详细信息,请参阅网络分析图层的类型和网络分析服务。

ArcGIS 10.5 产品白皮书

31

行车范围分析

6.6. ArcGIS for INSPIRE 扩展模块

ArcGIS for INSPIRE 提供了一个功能强大的现代化 Web GIS 解决方案,能够在支持

数据、服务和元数据时确保 INSPIRE 兼容性。

ArcGIS for INSPIRE 帮助用户满足和应对 INSPIRE 指令的变化,从而可以通过多国、

多机构的空间数据基础设施(SDI)与欧盟共享空间数据。

ArcGIS for INSPIRE 扩展了 ArcGIS,可帮助用户满足当前的 INSPIRE Discovery、

View 和 Download Services 交付要求,而无需复杂的数据迁移。

包括开源 Esri Geoportal Server(在 GitHub 上提供)和附加组件,以便为 INSPIRE

元数据创建目录和索引以及提供 INSPIRE Discovery 服务。

包括 ArcGIS Desktop 扩展,以创建和维护 INSPIRE 地理空间数据和元数据。

附:欧盟空间信息基础设施建设(Infrastructure for Spatial Information in the European

Community,以下简称 INSPIRE)是欧盟议会和欧盟理事会以立法方式颁布的欧洲空间

信息基础设施建设法令,目的是建立欧盟统一的空间信息基础设施,实现有关环境空间

信息在全欧盟范围内的共享,便于跨区域的政策决策及应用。

有关详细信息,请参阅 ArcGIS for INSPIRE。

ArcGIS 10.5 产品白皮书

32

6.7. 数据互操作扩展模块

使用 ArcGIS Data Interoperability 扩展模块共享地图和地理处理服务,这些服务几

乎利用了所有数据格式或数据模型。

将多个数据源与应用程序中的创作空间提取、转换和加载 (ETL) 功能相结合。

直接读写非标准数据格式并创建几何或属性转换,以支持复杂建模。添加对超过 200

种数据格式的支持 — 包括对 CAD、OGC、XML、JSON、RSS、DBMS、甚至

是无编码格式 CSV 的支持。

使用 ArcGIS Data Interoperability 10.5 for Desktop 创作地图或空间 ETL 工具,使用

ArcGIS Data Interoperability10.5 for Server 发布应用程序内的格式支持或空间 ETL

功能。

有关详细信息,请参阅什么是 Data Interoperability extension?

互操作流程

6.8. 数据质检扩展模块

ArcGIS Data Reviewer扩展模块使您可以通过Web和移动端应用程序提供数据质检

工作流。

利用 Web 服务扩展整个组织内的数据质量控制工作流。

通过自动检测不符合数据质量要求的数据来降低决策风险。

部署易于使用的工具来收集和管理客户的数据质量反馈,从而提高已发布 Web

ArcGIS 10.5 产品白皮书

33

服务的质量。

在多个报告平台内以新方式跟踪和报告数据质量。

有关详细信息,请参阅什么是 ArcGIS Data Reviewer for Server?

数据质检分析

6.9. 工作流管理扩展模块

ArcGIS Workflow Manager 使您能够通过 Web 服务对项目工作流进行组织、标准化

和统一管理。

对与工作相关的所有信息进行标准化,以保持组织内部的一致性。

在多用户地理数据库环境中为相应资源创建和分配工作流。

通过自动执行任务,同时追踪工作人员和时间计划以及其他方面,可以提高用户

的工作效率和节省时间。

通过 ArcGIS Workflow Manager for Desktop 创建和传送项目工作流,使用 ArcGIS

GIS Server 将这些服务共享到桌面、移动和 Web 应用程序中。

ArcGIS 10.5 产品白皮书

34

工作流图

6.10. 互联网海图扩展模块

ArcGIS for Maritime:Server 可用于发布和提供电子海图 (ENC) 和其他 S-57 产

品,例如,通过 Web 提供的附加军事图层 (AML)、内陆电子海图 (IENC) 以及加密

ENC (S-63)。

可以从任何位置访问 S-57 数据集来进行可视化和分析,这些位置包括 Web 浏览

器、移动设备、GIS 应用程序(例如,ArcGIS Desktop 和 ArcGIS Online)或

任何 OGC 兼容的 Web 应用程序。

缩放至特定产品,或在全国或区域范围内同时显示 ENC 的整个目录。

可使用交互式查询或识别数据来查找特定要素,例如导航帮助。

修改所使用的标准 S-52 符号系统(用于熟悉的外观)的要素的配色方案、符号

化和安全等值线值。

与其他地理空间信息一起使用以进行分析或创建详细交互式地图。

通过 WMS 服务或 ArcGIS GIS Server REST 接口来查询、渲染和提供 S-63 加密

ENC。

与 ArcGIS for Maritime: Charting for Desktop 配合使用来管理您的图表数据和生产

工作流,与 ArcGIS for Maritime: Bathymetry for Desktop 配合使用来管理您的深海探测

ArcGIS 10.5 产品白皮书

35

数据。有关详细信息,另请参阅什么是航海图服务。

6.11. 国防制图扩展模块

Esri Defense Mapping 能够为组织内部或外部具有相应凭证的人员提供动态的自助

在线地图生成体验。

标准化数据库驱动的国防制图生产过程和高质量布局。

使用实时矢量制图方法。

创建基于国防标准的适合使用的地图。

启用高级定制打印和导出服务。

使用 Esri Defense Mapping for Desktop 来创建和简化 GIS 数据、地图生产任务和

产品的交付。

6.12. 地图生产扩展模块

Esri Production Mapping 扩展模块通过将业务规则、工作流、地图文档和其他生产

信息存储在一个集中位置来保证各项操作之间的一致性。

为组织内的任何人提供动态的自助在线地图生成服务。

标准化数据库驱动的制图生产过程和高质量布局。

通过自助制图来制定制图规则、模板和工作流,从而提高效率。

使用 Esri Production Mapping for Desktop 来创建和简化 GIS 数据、地图生产任务

和产品的交付。

使用 Product on Demand (POD)(在 GitHub 上提供)生成高端地图图形输出并通

过 Web 共享具有高制图精度的地图产品。

ArcGIS 10.5 产品白皮书

36

地图生产的工作流

6.13. 道路和高速公路扩展模块

通过额外提供一个用于线性参考的 REST 服务功能,Esri Roads and Highways 扩展

模块对现有 ArcGIS GIS Server 地图服务进行了扩展。

发布道路和高速公路 LRS 网络,并将事件图层注册为地图服务。

将路线及测量值转换(定位)为坐标或折线,以及将坐标位置转换为路线及测量

值。

验证路线或测量值。

从一个 LRM 到另一个 LRM 转换测量值。

使用 Event Editor 的线性参考功能,Event Editor 是一款 Web 应用程序,可通过

它对在 Roads and Highways for 扩展模块中发布的事件数据进行配置。

使用 Esri Roads and Highways for Desktop 来添加和编辑路径,然后执行多层、事

务事件编辑,并且支持使用 Roadway Characteristics Editor 退出重叠和合并重

合事件。

ArcGIS 10.5 产品白皮书

37

此外,您可以使用 Roadway Reporter 来扩展 Roads and Highways 模块的功能,

Roadway Reporter 是一款 Web 应用程序,可基于以地图为中心的用户体验来创建路段、

道路里程和道路记录报告。

有关详细信息,请参阅 Esri Roads and Highways for Server。

6.14. 管线参考模块

通过额外提供一个用于管线组织中的线性参考的 REST 服务功能,ArcGIS

Pipeline Referencing 扩展模块对现有 ArcGIS GIS Server 地图服务进行了扩展。

发布 LRS 网络,并将事件图层注册为地图服务。

将路线及测量值转换(定位)为坐标或折线,以及将坐标位置转换为路线及测量

值。

验证路线或测量值。

从一个 LRM 到另一个 LRM 转换测量值。

使用 Event Editor 的线性参考功能,Event Editor 是一款 Web 应用程序,可通过

它对在 Pipeline Referencing for Server 中发布的事件数据进行配置。

使用 ArcGIS Pro 中的 ArcGIS Pipeline Referencing 来添加和编辑路径,然后执行

多层、事务事件编辑,并且支持使用 Event Editor 退出重叠和合并重合事件。

有关详细信息,请参阅 ArcGIS Pipeline Referencing for Server。

7. ArcGIS GIS Server 自定义扩展开发

用户可以使用可在ArcGIS客户端执行的自定义逻辑来扩展ArcGIS GIS Server地图

和影像服务,可使用两种方法扩展这些服务类型:

7.1. 服务器对象扩展模块(SOE)

可用于创建新的服务操作,以扩展地图或影像服务基本功能。如果用户要执行的明

确定义的业务逻辑很难利用 ArcGIS 客户端 API 来实现,这时就可以选择使用 SOE 。

大多数 SOE 是通过将 ArcObjects 代码与 GIS 数据和地图结合使用来实现此目标的。

ArcObjects 是构建 ArcGIS 的核心组件,通过 ArcObjects 编写 GIS 功能可以提供最

ArcGIS 10.5 产品白皮书

38

大的灵活性。

SOE 适用于创建新的服务操作,以扩展地图或影像服务的基本功能,SOE 具有以

下优势:

可将 SOE 以表述性状态转移 (REST) 或简单对象访问协议 (SOAP) Web 服务

的形式进行暴露,从而使构建于 ArcGIS 客户端 API 和任何其他 REST 或

SOAP 客户端上的自定义客户端能够方便地对其进行调用。事实上,RESTSOE

会显示在 ArcGIS 服务目录中并可暴露出 ArcGIS 客户端 API 能够识别的典

型对象类型(大多数采用 JSON 格式)。

构建 SOE 时,用户只是提供在 ArcGIS GIS Server 上进行工作的大致方法,而不

是从客户端对服务器进行大量的调用。SOE 可非常有效地封装 ArcObjects 逻

辑,从而为用户快速执行调用提供了理想的环境。

判断是否需要 SOE

开发 SOE 最容易的替代方案,可能就是创建实现业务逻辑的地理处理模型,然后

将该模型作为服务进行发布。可使用模型构建器以交互方式对需要的工具进行拖放和连

接,而无需编写 ArcObjects 代码。地理处理服务同样支持异步执行功能,这样用户可

以开始作业、执行其他操作并随后返回来检查结果。

地理处理服务的缺点是占用的内存较大并且运行速度可能比 SOE 慢。如果用户一

天只运行某个流程几次,那么这不是什么问题。然而,如果一天要运行某个流程很多次,

或者有许多并发用户,则花些时间来构建 SOE 是值得的。

7.2. 服务器对象拦截器(SOI)

可用于拦截地图或影像服务的现有内置操作请求。这使用户可以执行自定义逻辑,

并可针对现有客户端无缝覆盖现有操作,从而更改这些服务行为。上述客户端可以是使

用 ArcGIS API for Javascript 和 ArcGIS Runtime SDKs 等构建的应用程序。

SOI 适用于更改现有地图或影像服务操作行为。例如,用户可以更改查询或地图影

像导出请求行为。如果需要一个地图服务可以同时开启多个 SOI 扩展满足不同的拦截

需求。

判断是否需要 SOI

ArcGIS 10.5 产品白皮书

39

如果用户想扩展服务器的新功能,可考虑使用 SOE 或地理处理模型和脚本。SOI

适用于对一个已经存在的 ArcGIS Server 服务添加一个功能或操作,这种改变对于已经

存在的客户端应用程序来说是察觉不到的。

用户可以通过创建 SOI 来实施自定义业务逻辑(如安全性),或对默认地图或影

像服务不符合的要求进行审核。例如:

在服务器创建的所有地图影像上加水印 - 可通过创建 SOI 向服务器创建的地

图影像上叠加自定义水印。该功能可让组织或托管公司确保所有影像上均正确

添加了标识。

审核并记录所有请求 — 出于调试目的,用户可创建 SOI 以记录收到请求的详

细信息,如有关输入参数和该请求传递的用户凭据的完整信息。

后处理响应 — 可向发出的响应添加来自不受 ArcGIS GIS Server 支持的单独业

务系统的其他信息,以便将空间数据与其他商业智能数据进行连接。

地图服务操作级别的访问控制 — ArcGIS GIS Server 仅支持向所有服务用户提

供启用服务操作或完全禁用访问操作。SOI 可基于用户角色对收到的请求进

行过滤,以实现服务操作级别的访问。

地图服务图层级别的访问控制 — 无论用户是具有对所有服务数据的完全访问

权限,还是不具访问权限,ArcGIS GIS Server 都仅提供服务级别的数据访问。

SOI 可用于对特定图层的访问进行过滤,还可以根据用户角色过滤图层内的

数据。

7.3. 开发扩展模块须知

开发扩展模块需要用户具备通过 Java 或.NET 编程语言调用 ArcObjects 的知识。

同时还需要了解REST 或 SOAP 原理。使用 Java开发的扩展模块可以部署至ArcGIS GIS

Server (Windows) 和 ArcGIS GIS Server (Linux) 。使用 .NET 开发的扩展模块仅可部署

至 ArcGIS GIS Server (Windows) 。

只能针对特定的服务类型(地图服务或影像服务)开发扩展模块。例如,无法开发

既适用于地图服务,又适用于影像服务的通用扩展模块。在这种情况下,必须为每种服

务类型开发单个扩展模块;即为地图服务和影像服务各开发一个扩展模块。

ArcGIS 10.5 产品白皮书

40

另外,如果要为扩展模块编写自动生成属性页面之外的自定义属性页面,用户必须

了解 Windows 窗体开发或 Java Swing(针对 ArcCatalog 页面)或使用超文本标记语

言 (HTML) 和 JavaScript 进行 Web 窗体开发(针对 Manager 页面)的知识。