ArcGIS发布地图并创建切片缓存方法
Posted GIS前沿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArcGIS发布地图并创建切片缓存方法相关的知识,希望对你有一定的参考价值。
打开ArcMap,在一份空白的地图文档中添加数据,设计符号,设计标注、设计各个图层在各个比例尺下的可见性(图层属性中设置),以达到在Web端各缓存比例下最佳的显示效果。
可以参考ESRI的地图服务缓存专题帮助文档:
http://server.arcgis.com/zh-cn/server/10.4/publish-services/windows/creating-a-map-cache.htm
使用【生成地图服务缓存切片方案】工具,选择刚才配置的地图文档,填写方案名称,添加各个缓存比例:
可以打开查看,生成的地图服务缓存切片方案如图所示,可以看到记录的参考系和各个缓存比例:
3.1. 将文档共享为服务
关键步骤截图:
3.2. 服务编辑
在服务编辑器的【缓存】选项卡中按照如下图所示设置:
在“Draw this map service”中的“从数据中动态生成”不会生成缓存图片,客户端浏览时也不会使用服务器端的缓存,优点是发布服务快,缺点是Web程序浏览数据时会动态渲染,体验感较差;而“使用缓存中的切片”时浏览器只需要加载浏览范围的图片,浏览速度快。如下图所示,Chrome浏览器按F12,可以看到缓存的图片细节,缺点是需要提前花费时间切片,但往往这种预开销时间是值得的。
选择刚才设计的切片方案后,选择“服务发布后手动创建缓存”,服务发布后可以手动控制缓存的范围以及级别,对大范围大比例影像数据的缓存推荐这样操作。
在高级设置中设置最大最小缓存比例、缓存目录、缓存区域以及图片格式:
然后点击【分析】,至少要解决其中的“高”,有助于提高缓存性能(该图提示的是源数据没有注册),点击相应记录会自动弹出解决工具:
点击【发布】,几秒内会提示发布成功(这是因为在服务发布时没有选择“服务发布后自动切片”),在服务目录中会生成相应的服务。更多干货敬请关注:GIS前沿 注意,此时并没有开始创建缓存,此时浏览该服务Web程序界面会是一片空白。
发布的服务:
在Catalog中对该服务右键,点击【管理缓存】-【管理切片】,程序会调用“管理地图服务切片缓存”工具:
缓存尺寸为希望现在缓存的级别,更新模式包括“重建空切片”、“重建所有切片”、“删除所有切片”,针对缓存的都是选择的尺寸,缓存区域可以限定缓存的空间范围,一般在缓存更新时使用,比如后续收到了更清晰的某区域的遥感影像数据,希望缓存后发布到该服务。
第一次缓存时,可以先选择一些小比例尺,有助于在较短时间缓存后,先看到缓存效果。如果一次性对全图全尺寸缓存,按照默认设置就好。
不勾选“Wait for job completion”,服务器会在后台切片,不影响ArcGIS的使用。不勾选并点击确定,右下角会很快提示:
此时并不意味着缓存完毕,可以对服务右键后,点击【浏览缓存状态】,查看目前的缓存进度:
前几级只有少量切片,花费时间很少,各层的切片时间会随着瓦片数量指数级增长。按照切片原理,比例尺是两倍变化的话,万片数量会成4倍增长:
在服务上右键,点击【View Cache Status】,可以查看切片进度:
上图显示切片已经中断(前一天晚上开始切片,上图显示的是第二天早晨查看的情况),更多干货敬请关注:GIS前沿 正常情况下,正在切片的记录“In Progress”会显示为“Yes”,可以先在【Job Status】中修复错误:
修复后,如下图所示:
刷新后,如果仍不能继续切片,需要使用【管理地图服务缓存状态】工具:
选择此服务,重建该服务的缓存状态:
再查看缓存状态,显示先前设置的缓存比例都已经切片缓存完成,说明刚才的缓存状态显示并不正确。
此后可以在时间合适的时候,对剩余大比例尺缓存继续切片。切片方法为右键服务-【管理缓存】,选择缓存比例,选择“重建所有缓存”即可,这样可以对海量大比例遥感数据分阶段来切:
以上是关于ArcGIS发布地图并创建切片缓存方法的主要内容,如果未能解决你的问题,请参考以下文章
ArcGIS api for javascript——创建地图
ArcGIS 高级地图缓存技术[5] 地图缓存进阶——缓存的更新与迁移