复制缓存
在某些时候,您可能需要在文件夹或机器之间传输地图缓存。对于小型缓存,可使用操作系统中的复制和粘贴功能进行传输。而大型缓存的复制会较为复杂。这通常是由于复制过程中涉及大量文件,而并非由于缓存占据了多大的磁盘空间。
ArcGIS Server 10 中引入的紧密缓存存储格式旨在使大型缓存的复制变得更加容易。在此缓存类型中,切片不会以单个文件形式存储;相反,切片将被分组到 .bundle 文件中。这使得需要复制的文件减少了许多,缓存也会变得更小。使用紧密缓存存储格式替代另外的松散存储格式可显著缩短复制时间。
如果要在 Windows 中复制大型松散缓存,可使用命令行来代替“复制”和“粘贴”功能。Xcopy 命令可以对目录及其中所有子目录进行复制。以下示例介绍了如何使用 Xcopy 将来自网络位置(映射为 Z 驱动器)的缓存 USA 复制到本地计算机的缓存目录:
xcopy Z:\cache\USA C:\arcgisserver\arcgiscache\USA /s /e
有关命令行语法和参数的更多帮助,请参阅 Microsoft 的 Xcopy 命令文档。
对于 Linux 和 Solaris 平台,存在多个可用于复制大量缓存数据的命令。用户可将以下命令与“cp -r”和“tar -cf”一起使用来复制缓存数据。
可使用以下命令复制缓存的 tarball 存档:
dd if=<source tar file> of=<destinatation tar file> bs =2046k Note: the value of the blocksize (bs) can be increased or decreased to suit the bandwidth
要在对大型缓存的进度进行追踪时将其复制到远程计算机。
rsync -avx -progress /arcgiscache/mapservice user@remotemachine:/destination/directory
可专门用于复制大批量文件的第三方应用程序有许多种。与使用操作系统自带的工具进行复制相比,运用这些应用程序进行复制的稳定性会更高。其中部分应用程序可对任务进行排程及排列。
使用 FTP 移动松散缓存时,如果事先对文件进行打包压缩,则传输将可能进行地更加平稳。您不必对已压缩的文件再次进行压缩;压缩的目的仅是为了避免对无数的小文件进行传输。此外,某些第三方应用程序还可以简化文件的压缩及解压过程。
缓存及文件夹结构
您可以使用现有的地图服务将缓存复制到计算机上,而该缓存将在服务重新启动时被删除。顶级缓存文件夹名称必须与地图服务名称相同。但也存在例外,如果在 GIS 服务器中以文件夹的形式组织地图服务,则顶级目录语法为<文件名>_<地图服务名称>。