ArcGIS Server 站点的内部
ArcGIS Server 站点由多个组件构成,这些组件可以分别部署到多台计算机上以提高计算能力。在对分配给一组服务的资源进行管理的过程中,站点中的各个组件都有着明确的分工。
ArcGIS Server 站点的组件可以归纳如下:
- Web 服务器 - 托管 web 应用程序,并为 ArcGIS Server 提供可选的安全和负载平衡优势。
- Web Adaptor - 将 ArcGIS Server 与企业级 web 服务器相集成,从而将收到的请求发送给多台 GIS 服务器计算机。
- GIS 服务器 - 用于处理发布到 GIS web 服务的请求。GIS 服务器可绘制地图、运行工具、提供影像、同步数据库、投影几何、搜索数据以及执行 ArcGIS 所提供的其他众多操作。
本主题对各组件进行了概述并包含各附加信息的链接,以帮助您有效地管理 ArcGIS Server 站点。
web 服务器
Web 服务器可以托管 Web 应用程序,并为 ArcGIS Server 站点提供可选的安全和负载平衡优势。ArcGIS for Server 与许多流行的 Web 服务器相兼容,包括 Internet 信息服务 (IIS)、WebSphere 和 WebLogic。
GIS 服务器组件通过 HTTP 直接对外暴露服务,您无需使用单独的专用 Web 服务器(如 IIS)。但是,如果要利用 web 服务器的一些固有安全优势(如身份验证选项),或者如果要托管 web 应用程序,则您可以在部署中加入 web 服务器。
Web Adaptor
ArcGIS Web Adaptor 实际上是一个将请求从 Web 服务器转发到 GIS 服务器的 Web 应用程序。Web Adaptor 可追踪站点中添加和删除计算机的状况并将数据恰当地转发到相应的计算机。使用 Web Adaptor 可为站点自行设置名称和端口,而不必使用默认端口 6080 和默认站点名称“arcgis”。Web 适配器还允许您充分利用 Web 服务器的内置功能实现安全设置,并且可以阻止所有至 ArcGIS Server 管理器和 ArcGIS Server 管理员目录的外部连接。
收到 web 服务请求后,Web Adaptor 将请求转发到其中一台 GIS 服务器计算机上。然后,这些 GIS 服务器计算机之间进行通信,以确定哪台计算机可用并指定来处理某个请求。如果 Web Adaptor 确定某个 GIS 服务器不可用,则将停止向该服务器转发请求。
其他 web 网关选项
Web Adaptor 并不是用于配置站点的 web 网关(或入口点)的唯一方式。其他 web 网关技术可以包括物理 HTTP 负载平衡器和网络路由设备,也可以包括专用于负载平衡的第三方软件。在 Amazon EC2 环境中,Amazon Elastic Load Balancer (ELB) 可以作为 web 网关。如果您所在的组织已使用现有技术实现 web 网关,则多数情况下,经过相应调整后就可以配合 ArcGIS Server 使用。
尽管 web 网关和 web 服务器经常会结合使用,但是部署中存在 web 网关并不意味着一定会存在 web 服务器。例如,如果您的 web 网关是物理路由器,则它可以将请求直接发送到 GIS 服务器而无需使用 web 服务器。
GIS 服务器
站点中安装了 ArcGIS for Server 的计算机可以视为 GIS 服务器。针对地图、地址坐标、地理处理作业等所收到的每个 Web 服务请求都将被分配到此站点中的可用 GIS 服务器。然后,GIS 服务器进行绘制地图、查找地址坐标、运行地理处理工具等工作,然后将结果返回到客户端。实际上,GIS 服务器是站点的工作中心。
GIS 服务器通过 HTTP 暴露出您的服务。为了获取附加功能,可以使用运行 Web 适配器的专用 Web 服务器对此服务器进行补充。
您可能会发现有必要在 ArcGIS Server 站点中配置多个 GIS 服务器,以防止某个 GIS 服务器不可用时出现宕机。当某个 GIS 服务器转为离线时(无论是否经过计划),Web Adaptor 仍可以继续将收到的请求分发到站点中的其他 GIS 服务器上。此外,在添加和移除 GIS 服务器时其他 GIS 服务器都可以检测到,从而创建一种在云环境下运转良好的插件式架构。
以上 ArcGIS Server 站点组件可以位于同一台物理计算机上,以用于开发、测试或支持小型部署。要了解有关小型和大型站点中建议使用的架构,请参阅部署方案。
GIS 服务器集群
GIS 服务器可划分为不同的组,称为集群。按照站点管理员的配置,每个集群都运行一个专门的服务子集。例如,您可以创建一个集群以运行所有地图服务,然后创建另一个服务器集群(可能具有更高的处理能力)来运行地理处理服务。
要了解有关集群的详细信息,请参阅主题关于 GIS 服务器集群。
配置存储
ArcGIS Server 站点包含一个指定为配置存储的特定文件夹,其中包含站点及其服务的所有属性。创建站点时需要指定配置存储的位置。在一个多机站点中,GIS 服务器通过一个共享网络目录对配置存储进行访问。在包含多个 GIS 服务器的站点中,建议将配置存储保留在其自己的容错文件服务器中(独立于 GIS 服务器计算机)。
服务器目录
服务器目录表示网络上的物理目录,专供 ArcGIS Server 站点存储和写入特定类型的信息。服务器目录分为多种,分别用于存储缓存、输出结果、作业、系统文件、上传的数据、输入数据、KML 和索引。这些服务器目录通常创建于在创建站点时所指定的位置。在一个包含多台计算机的站点中,该目录必须是一个共享网络目录。
有关每个服务器目录的详细描述,请参阅主题关于服务器目录。
由 GIS 服务器启动的进程
您可以在任何处于启动状态并参与到站点中的 GIS 服务器计算机上看到下列操作系统进程。
- 一个 ArcGISServer.exe 进程
- 每个运行中的服务实例都对应一个 ArcSOC.exe 进程。例外:地理处理服务每个运行中的实例都对应两个 ArcSOC.exe 进程。
- 一个 rmid.exe 进程
- 两个 javaw.exe 进程。这些进程提供了基本的应用程序服务器功能和 Web 服务托管能力。
通过查看 Windows 任务管理器中的“命令行”列,可以判断 javaw.exe 进程是否与 ArcGIS Server 关联。如果路径中包括 ArcGIS 安装目录,可断定它是与 ArcGIS Server 关联的进程。通过检查其完整命令,可以获取各进程的详细信息。
Windows 服务 ArcGIS Server 代表 GIS 服务器自身。停止该服务可完全停止计算机上的 GIS 服务器,并关闭所有正在运行的 GIS 服务实例。
客户端
ArcGIS Server 站点的客户端可以包括下列任意一项:
Web 浏览器
任何具有 web 浏览器和 Internet 连接的用户均可使用 web 应用程序处理 ArcGIS Server 服务。这些应用程序可包括即用型应用程序,例如 ArcGIS.com map viewer 或 ArcGIS Explorer Online,或者用于使用 ArcGIS web 查看器或 API 的应用程序。对于任何一种情况,这些 web 应用程序的最终用户都不需要在计算机上安装 GIS 软件。
移动设备
移动设备(例如移动电话和平板电脑)可以访问 ArcGIS Server 站点上发布的 web 应用程序和服务。这些应用程序可用于查看地图、搜索位置以及在外业工作中进行 GIS 分析。Esri 开发了多种 API,简化了使用 ArcGIS Server web 服务构建移动应用程序的过程。其中包括 ArcGIS API for iOS、Android 和 Windows Phone。
ArcGIS Explorer
ArcGIS Explorer 是一款用于数据可视化和导航的轻量级的免费应用程序。您可以将 ArcGIS Server 服务作为数据添加到 ArcGIS Explorer 中,从而获得丰富的导航和查看体验。对于高级功能,您可以使用 ArcGIS Explorer SDK 开发用于处理服务的自定义任务。
ArcGIS for Desktop
ArcGIS for Desktop 既可作为 ArcGIS Server 服务的使用者也可作为一种管理工具,因为某些工具可以将项目发布到服务器上。
可用于访问服务的应用程序包括 ArcMap、ArcCatalog、ArcGlobe 和 ArcReader。在目录 窗口中,可以通过输入其 URL 连接到 GIS 服务器。如果服务器需要身份验证,还需要输入用户名和密码。连接后,可以指向并单击要使用的服务。例如,在 ArcMap 中,可以将地图服务从目录窗口拖放到地图中。
“目录”窗口也可以作为 ArcGIS Server 站点的管理界面,用于执行添加文件夹、添加和删除服务以及注册数据库等操作。要获得此功能,在建立服务器连接时,需要输入管理员名称和密码。
ArcGIS Engine 应用程序
ArcGIS Engine 应用程序可以多种方式使用 GIS 服务器。最简单的方式是在地图或 globe 文档中以数据的形式处理服务。ArcGIS Engine 开发人员还可以设计一种应用程序,用于将数据发送到 GIS 服务器,从而执行那些仅在服务器计算机上才授予了许可的扩展模块所提供的高级任务,如空间分析。相反,应用程序还可从服务器中请求数据,以在 ArcGIS Engine 应用程序的丰富化用户界面中进行编辑或分析。