地图缓存是使地图和图像服务更快运行的一种方法。 创建地图缓存时,服务器会在若干个比例级别上绘制地图并存储地图图像的副本。 然后,服务器可在某人请求使用地图时分发这些图像。 对于服务器来说,每次请求使用地图时,返回缓存的图像要比绘制地图快得多。 缓存的另一个好处是:图像的详细程度不会对服务器分发副本的速度造成显著影响。
缓存过程中会发生什么?
缓存不会自动进行。 要进行缓存,首先需要设计地图并将其作为服务进行共享。 然后,设置缓存属性并开始创建切片。 既可以选择一次创建所有切片,也可以允许按需(换言之,当某人最初访问这些切片时)创建某些切片。
缓存地图时,应以多个比例级别绘制地图,以使用户可以缩放地图。 选择缓存属性时,需要确定要针对缓存使用哪些比例。 第一次尝试使用缓存工具时,您可以使用计算机所推荐的默认比例级别。 然而,通常情况下,您应尽早挑选出比例,以便在这些比例下对地图进行特定设计以获得好的视觉效果。 记下这些比例并在 ArcGIS Pro 中进行制图设计时使用这些比例。 创建缓存时,可以将这些比例输入到缓存生成工具中。
此外,在创建缓存时,还需要理解一些其他重要属性。 有关详细信息,请参阅在 ArcGIS Server Manager 中编辑服务缓存属性。
缓存存储于服务器缓存目录中。 安装 ArcGIS Server 时,会在本地文件夹中创建一个服务器缓存目录。 如果要向站点中添加更多的 GIS 服务器,您需要共享服务器缓存目录(使用操作系统选项,如 Windows 文件共享),以便站点中的其他机器也可以访问该服务器缓存目录。
针对缓存所选择的比例级别和所设置的属性都属于切片方案。 每个缓存都有一个切片方案文件可在创建缓存时直接导入,以确保所有缓存都使用相同的切片大小和比例。 这有助于提高包含多个缓存服务的 Web 应用程序的性能。 也可以使用熟知的 ArcGIS Online、Google 地图和 Bing 地图切片方案,以便可以将您的缓存轻松地叠加到这些在线地图服务上。
我是否可以缓存所有地图?
地图缓存代表着某个时刻点的地图快照。 正因如此,缓存非常适用于不经常变化的地图。 这些地图包括街道图、影像图和地形图。
如果数据经常变化,您仍然可以使用缓存工具来定期更新缓存。 您可以将更新设置为自动进行。 要了解经常变化的地图是否仍然可以进行缓存,弄清以下问题会有助益:
我的地图需要有多新?
如果您所看到的数据需要是实时数据,不接受任何时间延迟,则不适宜于对地图进行缓存。 但是,如果可以接受较短时间的延迟并且可以在这段时间窗内进行缓存更新,则仍然可以使用缓存。
缓存有多大,数据的更改范围有多广?
这两个问题可以归为一类。 创建大缓存往往需要更多的时间。 仅当可隔离出变化的区域并且可单独更新这些区域时,更新大缓存才具有实际意义。 如果缓存较小,则可以快速地重新构建整个缓存。
如果更新不能在一个可接受的时间段内赶上变化的步伐,则不适于对地图进行缓存。
考虑了上述问题之后,即可在适当的时候使用缓存。 您所获得的性能好处很可能要大于创建和更新缓存所付出的投入,因此是非常值得的。
要了解有关更新缓存的详细信息,请参阅地图缓存更新。
我是否仍然可以访问基础数据?
尽管地图缓存代表的是数据图片,您仍然可以允许其他人在您的地图服务上执行识别、搜索和查询操作。 这些工具可以从服务器获取要素的地理位置并返回相应的结果。 应用程序会在缓存图像之上以其本地图形图层格式绘制这些结果。
怎样开始缓存?
要开始缓存,首先必须发布地图或影像服务。 在发布过程中,您需要设置服务属性。 您可在此处定义缓存的比例和范围。 有关详细信息,请参阅 ArcGIS Pro 中发布的服务。
可在发布服务时立即创建切片(适用于较小的缓存),也可选择在发布后自行构建缓存(适用于较大的缓存,在这种情况下,您希望在地理上限制按大比例构建的缓存的数量)。 自行构建缓存时,将使用“服务器工具”工具箱中提供的管理地图服务器缓存切片地理处理工具执行缓存的构建。
用于创建和维护地图缓存的软件组件
以下内容概述了在本软件中创建和维护地图缓存时需要了解的软件组件。
“生成地图服务器缓存切片方案”工具
生成地图服务器缓存切片方案工具用于创建地图的切片方案,该方案包括缓存的比例、缓存的坐标系以及其他基本属性。 工具的输出是一个 XML 格式的切片方案文件。 在创建缓存时,可浏览至切片方案文件以加载这些属性。
最好使用此工具创建切片方案并将其用于组织内的多个缓存。
管理地图服务器缓存切片工具
管理地图服务器缓存切片工具可用于在现有缓存中创建、更新或删除切片。 可通过右键单击“目录”树中的服务项,然后单击管理缓存 > 管理切片来访问此工具。
由于管理地图服务器缓存切片是一个地理处理工具,因此它可以像任何其他工具一样被编写成脚本以帮助您定期更新缓存。
缓存目录
ArcGIS Server 缓存目录可以是存储缓存切片的硬盘或云存储中的文件夹。
可打开服务器缓存目录以检查缓存切片和切片方案文件 conf.xml。 缓存目录也可能包含 status.gdb 文件地理数据库,该数据库包含已构建的切片的信息。
下图显示了 Windows 资源管理器中的松散格式的缓存,此缓存中每个切片都存储为单个文件。 而对于紧凑格式的缓存,其表现为多个存储了大量切片的较大文件(称为束)。