分配服务器资源以创建缓存

ArcGIS Server 使用一个名为 CachingTools 的地理处理服务来创建缓存切片。当创建 ArcGIS Server 站点时,就已经在 System 文件夹中配置此服务。CachingTools 服务所允许的实例数将决定您的计算机专用于缓存作业的能力。

此外,一般情况下,您必须具有至少一个实例来运行正在缓存的地图、globe 或影像服务。增加地图、globe 或影像服务的实例数不会影响切片的创建速度。

法律声明法律声明:

在 ArcGIS 10.0 及之前的版本中,要增加缓存作业中使用的操作系统进程数,您需要增加正在缓存的地图或 globe 服务的实例数。从 10.1 版本起,增加 CachingTools 地理处理服务的实例数即可。

您可在任何时间使用管理器来调整想在缓存作业中使用的 CachingTools 地理处理服务的最大实例数。最小值和最大值应用于每台单个的 GIS 服务器;因此,如果最大值设置为 3 且在集群中有 4 个 GIS 服务器运行 CachingTools 服务,那么您最多可运行 12 个 CachingTools 的实例。

此操作允许从站点中添加和移除 GIS 服务器以增加或减少缓存所用的资源数量。即使缓存作业正在运行,也可以添加 GIS 服务器,然后将检测服务器并将切片分配给服务器以进行创建。

选择将用于缓存作业的实例数

运行缓存作业时,CachingTools 服务的一个实例将充当控制器实例。此实例负责向一个或更多员工实例分布任务。实际修改切片的是员工实例。为了确保至少有一个控制器和一个员工实例可用,为 CachingTools 指定的最大实例数应始终为 2 或更大。

诸如“管理地图服务器缓存切片”一类的工具允许您选择将有多少员工实例被指定为 CachingTools 实例。如果无法确定要输入的数量,可以使用集群中 GIS 服务器 CPU 内核的数量并在此数字的基础上加一。理想的实例数可能会因服务的性质而有所不同,但这是用于测试的合适起始数。

要计算出可输入的最大实例数,将 CachingTools 集群中的 GIS 服务器计算机数量与运行每台计算机所允许的最大 CachingTools 实例数相乘。然后对控制器实例的数量减去一。

可以选择在多个运行作业之间划分可用的 CachingTools 实例。如果 CachingTools 的实例正由其他作业使用,作业可能不会应用其最大实例数。如果缓存作业正在使用所有 CachingTools 实例,其他请求的作业将列队等候第一个作业结束。

情境

假设您想要创建缓存,且在具有一个集群的站点内具备三个 GIS 服务器。每个服务器最多允许四个 CachingTools 实例。可专用于任何缓存作业的最大实例数为 (3 * 4) - 1 或 11。“管理地图服务器缓存切片”或其他任何缓存工具都不允许输入高于此数的值。

如果想要在此站点上运行两个同步缓存作业且维持均匀分布加载,每个作业专用的实例数为 (12 - 2)/2(即 5)。也就是说,取站点可用的实例总数(3 * 4,即 12),减去两个控制器实例,然后除以两个作业。

顾及灵活性

您可能已在云环境中添加了站点,该站点能够根据需要自动添加 GIS 服务器。在这种情况下,您可能不想受可以用于作业的固定最大实例数的限制。这时,您可以输入值 -1 以表明不限制可以用于作业的实例数。将所有可用的 CachingTools 实例用于作业,不考虑添加到您站点的 GIS 服务器数量。

使用集群

在大型 ArcGIS 站点中使用集群来划分 GIS 服务器子集之间的工作。缓存作业具有弹性,可扩展到正在运行 CachingTools 服务的集群中所有可用的 GIS 服务器。

首次配置站点时,只有一个以默认值命名的集群。如果要将缓存作业约束为计算机的子集,则需要创建一个新的集群,并指定要在该群集上运行的 CachingTools 服务。然后可以将其他服务分配给不同的群集,使得这些服务不会被缓存作业中的进程过度运行。

对于未与 CachingTools 地理处理服务在同一群集上运行的服务,可为其创建缓存。例如,您可能具有一个西班牙地图服务,该服务在 A 集群上运行,而您的 CachingTools 服务在 B 集群上运行。使用这样的配置,您依然可以创建一个西班牙缓存。

9/15/2013