什么是地图缓存?

地图缓存是使 ArcGIS Server 地图运行更快的一种非常有效的方法。创建地图缓存时,服务器会以几种不同的比例来绘制整个地图并存储地图图像的副本。然后,服务器可在某人请求使用地图时分发这些图像。对 ArcGIS Server 来说,每当有人请求使用地图时,分发一个已缓存图像要比绘制地图快得多。缓存的另一个好处是:图像的详细程度不会对服务器分发副本的速度造成显著影响。

两个不同比例级别下的地图缓存插图

为何应缓存地图?

使用缓存时,您为绘制地图所造成的性能损失付出代价的唯一时间是在创建缓存时。因此,创建缓存可能要花费很长时间。然而,缓存的好处足可以弥补创建缓存所花费的时间。缓存的一些主要优势如下:

性能: 部署已缓存地图时,用户可以做更多的事情,因为他们所花费的等待地图绘制的时间更少。

质量: 使用缓存时,性能不会受到地图详细程度的影响。无论是否使用晕渲地貌、透明度还是 Maplex 标注引擎创建地图,性能都不会受到影响。缓存只是图像的集合,服务器返回这些不同的缓存图像所花费的时间大致相同。

行业标准: 您是否去过某个流行的 Internet 制图站点并观看过平移和缩放时的小方形切片填充?显示出所有的切片通常只需要几分之一秒的时间。这是因为它们使用的是缓存。使用 ArcGIS Server 地图缓存,您可以让地图实现类似的性能。

缓存过程中会发生什么?

缓存不会自动进行。要进行缓存,首先需要设计地图并通过地图发布一个服务。然后,设置一些缓存属性并开始创建切片。既可以选择一次创建所有的切片,也可以允许根据需要创建某些切片(即,当某人最初访问这些切片时)。

可通过以下三种方式访问用于缓存的管理地图服务器缓存切片 工具:

  1. 在 ArcCatalog 或 ArcMap 的目录窗口中,展开工具箱 > 系统工具箱 > 服务器工具 > 缓存
  2. 在 ArcCatalog 或 ArcMap 的目录窗口中,右键单击 GIS 服务器的所需服务,选择服务属性,然后选择缓存选项卡。
    • 如果是第一次创建地图缓存,确定相应的切片方案并选择创建切片
    • 如果不是第一次创建地图缓存,查看或更新切片方案并选择更新切片
  3. 在“地理处理”菜单下,选择搜索工具并在搜索对话框中输入管理地图服务器缓存切片

缓存地图时,应以多个比例绘制地图,以使用户可以缩放地图。为缓存选择属性时,需要确定要针对缓存使用哪些比例。如果是第一次尝试使用缓存工具,可以让计算机为您挑选几个比例。然而,您通常应尽早挑选出比例,以便将您的地图设计得在这些比例下具有较好的显示效果。记下这些比例并在于 ArcMap 中进行制图设计时使用这些比例。创建缓存时,可以将这些比例输入到缓存生成工具中。

此外,在创建缓存时,还有一些其他重要属性需要理解。可通过阅读可用的地图缓存属性了解详细信息。

缓存存储于服务器缓存目录中。如果将所有 ArcGIS Server 组件都安装在一台计算机上,安装过程会为您创建一个服务器缓存目录。如果将 ArcGIS Server 安装在多台计算机上,则需要自行创建服务器缓存目录。如需获得相关帮助信息,请参阅创建服务器目录

为缓存挑选的比例和设置的属性属于切片方案。每个缓存都有一个可在创建新缓存时导入的切片方案文件,以确保所有缓存都使用相同的切片大小和比例。这有助于提高包含多个已缓存服务的 ArcGIS Server Web 应用程序的性能。也可以选择使用众所周知的 ArcGIS Online、Google 地图和 Bing 地图切片方案,以便可以用这些在线制图服务轻松地叠加您的缓存。

我是否可以缓存所有地图?

地图缓存代表着某个时点上的地图快照。正因如此,缓存非常适用于不经常变化的地图。这些地图包括街道地图、影像地图和地形地图。

如果数据经常变化,您仍然可以使用缓存工具定期更新缓存。您甚至可以将更新设置为自动进行。要了解您的经常变化的地图是否仍然可以进行缓存,弄清以下问题会有助益:

  • 我的地图需要有多新?

    如果您在地图上看到的数据需要是即时数据并且不接受时间延迟,则不适宜于对地图进行缓存。但是,如果可以接受较短时间的延迟并且可以在这段时间窗内进行缓存更新,则仍然可以使用缓存。

  • 缓存有多大?数据的变化范围有多大?

    这两个问题可以归为一类。创建大缓存需要更多的时间。仅当可以隔离已变化区域并且只更新这些区域时,更新大缓存才具有实际意义。如果缓存很小,则可以快速地重新构建整个缓存。

    如果更新不能在一个可以接受的时间段内赶上变化的步伐,则不适宜于对地图进行缓存。

考虑了上述问题之后,即可在适当的时候使用缓存。您所获得的性能好处很可能要大于创建和更新缓存所付出的投入,因此是非常值得的。

要了解有关更新缓存的详细信息,请参阅地图缓存更新

我是否仍然可以访问基础数据?

尽管地图缓存代表的是数据图片,您仍然可以允许其他人在您的地图服务上执行识别、搜索和查询操作。这些工具可以从服务器获取要素的地理位置并返回相应的结果。应用程序将以它的本地图形图层格式在缓存图像之上绘制这些结果。

是否应在甚至已将地图优化为可动态绘制的情况下缓存地图?

ArcMap 中包含一个地图服务发布 工具条,此工具条有助于将地图调整为动态绘制。此工具条还可帮助您发布与之前版本中没有的快速绘制引擎配合使用的地图服务。即使您已经使用地图服务发布 工具条调整并发布了您的地图,您仍然可以创建缓存以获得更好的性能和可伸缩性。快速地图绘制引擎可以加快缓存的创建速度。它还可以在按需缓存切片时提高性能。


7/10/2012