ArcGIS Server 系统组件
ArcGIS 产品系列中的 ArcGIS Desktop、ArcGIS Engine 和 ArcGIS Server 都是通过 ArcObjects 构建的。ArcGIS Desktop 的临时用户可能不了解也不关心 ArcObjects。他们可能只需要运行 ArcMap 并编辑地图。直到他们开始想要自定义 ArcGIS Desktop 或者构建自己的应用程序时,才会逐渐熟悉 ArcObjects。
运行桌面应用程序与运行基于 GIS 服务器的应用程序的主要区别在于 ArcObjects 组件所在的位置不同。对于桌面应用程序,应用程序所需的对象被实例化并在本地计算机上的该应用程序中运行。例如,当您启动 ArcMap 并打开某地图文档时,ArcMap 应用程序将对绘制地图、添加图层、编辑布局的对象进行实例化。实际上意味着,存储在地图文档中的所有对象都将被激活,以便在 ArcMap 会话中使用。当您保存地图时,会话中所使用对象的当前状态将写入地图文档以供后续使用。
与桌面应用程序不同,基于 GIS 服务器的应用程序客户端将对 ArcObjects 组件进行远程访问。您可以将 GIS 服务器视为一个容器,其中托管着所有客户端应用程序需要使用的对象,托管方式与 ArcMap 会话为单个用户托管对象的方式类似。但通过 GIS 服务器,对象可在各个客户端之间实现共享。鉴于此,客户端使用服务器上运行的 GIS 资源的方式才会略有不同。创建用来访问 GIS 服务器的应用程序时,您需要遵循规定的编码原则才能访问服务器上运行的对象。这些原则已在“开发者帮助”系统中做出相关规定和说明。
如果熟悉 ArcGIS Desktop,那么您也会熟悉桌面环境中使用的 GIS 资源。例如,如果要显示 GIS 数据,可以通过地图和 globe 来实现。如果想要通过地址来查找它们的位置,可以使用地址定位器。如果想要执行某些分析,可以使用工具箱中的地理处理工具。这些项中的每项都封装了某些 GIS 功能。实际上,就是通过可以实现指定功能的一组特定 ArcObjects 组件来显示 GIS 功能。
例如,在 GIS 服务器中,您使用的是地图服务、Globe 服务和地理编码服务,而不是地图文档、Globe 文档和地址定位器。服务器上可用的 GIS 资源统称为服务。事实上,您使用的仍是地图文档、Globe 文档和地址定位器,因为它们是 GIS 服务器上所托管服务的源。因此,如果想要共享在 GIS 服务器上制作的地图,请使用地图文档定义服务器上运行的地图服务。
GIS 服务器的主要用途是托管服务并将它们分发到需要使用服务的客户端应用程序中。此外,GIS 服务器还将提供一组管理服务的工具;例如,您可以使用 ArcGIS Server 管理器应用程序来添加和移除服务。
了解 GIS 服务器系统的组成十分有用,因为这样您便可以构建能够有效利用 ArcObjects 并在服务器环境中运行的应用程序。本主题将对构成 GIS 服务器的各个组件加以介绍。
下方图片显示了 ArcGIS Server 系统架构:
ArcGIS Server 系统由以下一些组件组成:
- GIS 服务器 - GIS 服务器用于托管 GIS 资源(例如地图、globe 和地址定位器)并将它们作为服务呈现给客户端应用程序。
GIS 服务器本身由两个不同的部分构成:服务器对象管理器 (SOM) 和服务器对象容器 (SOC)。顾名思义,SOM 管理服务器上运行的服务。当客户端应用程序请求使用某项特定服务时,这项服务实际上是由 SOM 为客户端提供的。
SOM 可与一个或多个 SOC 相连接。SOC 计算机用于托管由 SOM 管理的服务。根据配置的不同,您可以选择在不同的计算机上运行 SOM 和 SOC,还可以使用多台 SOC 计算机。上图显示的是一台 SOM 计算机与两台 SOC 计算机连接。
在 Linux/Solaris 中,GIS 服务器还包含 Enterprise Core Services,因此服务器将在企业(多用户)模式下运行。SOM 也包含嵌入式 Identity Server 和 Sun Directory Server,它们用于用户身份验证。
- Web 服务器 - Web 服务器托管 Web 应用程序和服务,它们使用 GIS 服务器上运行的资源。
- 客户端 - 客户端可以是连接到 ArcGIS Server Internet 服务或 ArcGIS Server 本地服务的 Web 应用程序、移动应用程序和桌面应用程序。
- 数据服务器 - 数据服务器包含了以服务形式发布到在 GIS 服务器上的 GIS 资源。这些资源可以是地图文档、地址定位器、Globe 文档、地理数据库和工具箱。
- 管理器与 ArcCatalog 管理员 - ArcGIS Server 管理员可以使用管理器或 ArcCatalog 将 GIS 资源作为服务进行发布。
管理器是一个 Web 应用程序,它支持将 GIS 资源作为服务发布、管理 GIS 服务器以及在服务器上创建 Web 应用程序。
ArcCatalog 中包括一个 GIS 服务器结点,用于向 GIS 服务器添加连接以便实现服务器的常规使用或实现服务器属性及服务的管理。
- ArcGIS Desktop 内容制作工具 - 为了创建 GIS 资源(如即将发布到服务器中的地图、地理处理工具和 globe),您需要使用 ArcGIS Desktop 应用程序(如 ArcMap、ArcCatalog 和 ArcGlobe)。此外,如果想创建缓存地图服务,则还需要使用 ArcCatalog 来创建缓存。