1. ArcGIS Server
ArcGIS Server 是一个用户创建企业级 GIS 应用的平台,通过 ArcGIS Server 创建集中管理的,支持多用户的,提供丰富 GIS 功能,并且满足工业标准的 GIS 应用。ArcGIS Server提供广泛的基于 Web 的 GIS 服务以支持分布式环境下实现地理数据管理、制图、地理处理、空间分析、编辑和其他 GIS 功能。
ArcGIS Server 是基于 ESRI 公司 ArcObjects(AO)组件构建的 GIS 服务器平台软件。AO 是基于 COM 技术构建的一套 COM 组件,它提供了 GIS 数据访问,地图表现和空间分析等方面的 GIS 功能。通过 ArcGIS Server 所提供的功能丰富的应用程序接口能便捷的访问 GIS 服务与 GIS 功能组件,使用户方便在标准的.Net 或 J2EE Web 服务器中构建网络应用程序、网络服务及企业级应用等。此外也可以利用 ArcGIS Server 服务器端 GIS 功能提高桌面 GIS 应用中的数据处理性能。
4.2.4.1 相关概念
(1)服务器对象(Server Object)
在 ArcGIS Server 中的空间数据都是通过服务器对象(Server Object,SO)来负责调用,由它负责管理和提供系统中的 GIS 资源服务。它代表了一类专题 GIS 数据(Arc-GIS9.2 中服务器 对 象 包括 MapServerObject,GlobeServerObject,GeocodeServerObject 等)。服务器对象是粗粒度对象的 ArcObjects 组件,通过服务器对象可以调用安装在 GIS 服务器上的细粒度 ArcObjects 组件。它简化了为完成某项任务而需要的一系列操作的编程模型,使得客户端仅需要通过一个方法的调用即可完成内部细粒度 ArcObjects 的一组操作,如地图的显示。并且服务器对象提供了 SOAP 接口来处理 SOAP 请求,服务器对象可以作为Web Service 提供给用户消费。通过 Web Service,可以用标准的方法把服务器对象发布在上(ESRI,ArcGIS Server Conceptions and Terminology)。
此外服务器对象是可以进行预配置的。通过服务器对象管理器管理工具如 ArcGISCatalog 配置每个服务器对象的名字,类型,地图数据,是否池化等信息。
(2)服务器对象管理器(SOM)
SOM(Server Object Manager)是运行在 GIS Server 上的 Windows/Unix 服务,是分布于一个或多个容器服务器中的服务对象或服务器对象组。当应用通过 LAN 或 WAN 连接到 GISServer 时,实际是建立一个与 SOM 的连接,连接参数是运行 SOM 的服务器名称或 IP 地址。
(3)服务器对象容器(SOC)
SOC(Server Object Container)是一个运行一个或多个服务器对象的进程。SOC 进程由 SOM 启动或中止,SOC 进程运行于 GIS Sever 的容器服务器之上,每一个容器服务器可以宿主多个 SOC 进程。
(4)服务器上下文(Server Context)
一个服务器上下文是运行一组服务对象的服务器上的保留空间。可以将服务器上下文想象成一个进程,由运行服务器对象的服务器管理。服务器上下文提供了一种在相同空间和 “进程”中创建对象的方法,并作为一个运行的服务器对象,在同一个服务器上下文中工作的对象合作更好。
4.2.4.2 ArcGIS Server 主要功能
(1)提供通用的框架在企业内部建立和分发 GIS 应用;
(2)提供操作简单、易于配置的 Web 应用;
(3)提供广泛的基于 Web 的空间数据获取功能;
(4)提供通用的 GIS 数据管理框架;
(5)支持在线的空间数据编辑和专业分析;
(6)支持二维与三维地图可视化;
(7)除标准浏览器外,还支持 ArcGIS Desktop 和 ArcGIS Explorer 等桌面客户端;
(8)可以集成多种 GIS 服务;
(9)支持标准的 WMS,WFS,WCS;
(10)提供配置 .NET 和 Java 软件开发工具包;
(11)为移动客户提供应用开发框架。
4.2.4.3 ArcGIS Server 体系结构
ArcGIS Server 是一个分布于多台机器的组件构成的分布式系统。ArcGIS Server 系统中的每一个组件都在整个系统中担任特定的角色,如进行管理、激活、挂起以及平衡分配资源到每个给定的服务对象或服务对象组等。ArcGIS Server 系统由以下几部分组成部分组成,其结构如图 4.7。
(1)GIS Server—宿主各种 GIS 资源,例如 maps,globes,address locators,并将它们封装为服务提供给客户端应用。GIS Server 本身包括两部分: Server Object Manager(SOM)和 Server Object Containers(SOCs)。通过命名可以看出,是一个 SOM 和一个或多个 SOC,客户端发送请求到 SOM,SOM 将分配的资源提供给客户端,通过 SOM 对 SOC 进行调度与管理。
(2)Web Server—Web Server 包含 Web 应用的部署和 Web 服务,它们均使用 GISServer 上的服务资源。
(3)Clients—这里所说的客户端是多样化的,可以是 Web 客户端、Mobile 移动设备、通过 HTTP 连接到 ArcGIS Server Internet 服务或通过 LAN/WAN 连接到 ArcGIS Server Local Services 的 ArcGIS 桌面应用。
(4)Data Server—包含 GIS Server 上所发布服务的 GIS 资源,可以是 mxd 文档、geo-database,toolbox 等。
(5)Manager and ArcCatalog administrators—两者都可以用来将 GIS 资源作为服务发布,并进行管理,不同的是一个是在 Web 页面上管理,另一个在桌面 Catalog 上,在图上可以看出,它们所针对的层次有所不一样。
(6)ArcGIS Desktop content authors—各种 GIS 资源需要使用各种 ArcGIS Desktop 软件来定制,如果需要为地图服务生成缓存,可以用 ArcCatalog 来创建 cache。