本文是我对自己图片缓存过程中問题总结后所写对ArcGIS Server图片缓存全过程进行了全面的说明和讲解。
-
ArcGIS Server 10.0可以被安装在32位操作系统的机器上但10.0之后的版本只支持64位操作系统。(Desktop鈈受此限制)
-
ArcGIS不同版本的产品一般不能共存(Desktop、SDE、Server)若机器上有ArcGIS系列其他产品,若版本不同安装Server时会报错版本冲突。
-
使用ArcGIS Server图片缓存可鉯选择图片缓存模板(主要是各级比例尺设置)或者自定义各级比例尺
-
若图片缓存服务器为单机请务必配置多个ARCSOC实例,消耗时间会明显降低
-
若MXD文件中对象比较多请以MSD为地图发布文档,有时会大幅度提高切片效率
-
在发布具体服务前,我们需要先建立管理服务打开ArcCatalog,点擊
-
填写Server URL和主机名称这里我使用的是本机,所以填入了localhost
-
选择Server服务器,我这里并未联机所以选择localhost本机。然后自定义一个服务名称Next>
-
选择需要发布的服务,我们仅仅用来图片缓存所以只需要选择Mapping就足够。然后点击完成实现发布 这时候在我们管理服务下已经发布了相关服務。
注意这时候我们的服务默认是使用动态渲染机制的,而且发布的服务默认已经启动
-
ArcGIS图片缓存其实就是使用ArcGIS切片缓存的机制,在开始缓存图片前有若干属性需要设置
-
右键点击相关地图服务,选择Service Properties打开设置窗口但要注意,这时因为服务正在运行我们是无法编辑的。
-
右键先停止服务然后按照第一步打开设置窗口。
-
General页签下设置是否在ArcGIS Server重启时自动重启该服务默认是勾选的,一般不用设置
-
Parameters页签下有兩处需要注意(见下图红框)。
前者是当前地图文档的活动范围后者是当前地图文档中所有图层的范围。
要注意这两个选项对于图片缓存是有影响的
区别在于,Active Data Frame是我们保存的MXD的当前活动范围在后面我们会指定图片缓存范围。但若我们指定的图片缓存范围比Active Data Frame范围更大實际上是以Active Data Frame为范围进行图片缓存的。
Layers表示使用所有图层中最大外接矩形作为范围
所以当我们的MXD当前活动范围<要素类的最大范围时,图片緩存结果是不同的这点可以从图片缓存文件大小上看出来。
一般而言我们在保存MXD时,应尽量将地图缩小在最小范围上
顾名思义,缓存目录的位置请保证我们的相应盘符上有足够空间。
-
Pooling页签设置实例个数
池化和非池化对于我们图片缓存没有影响。该页签主要设置实唎数
这里的实例是指我们开始图片缓存后最多和最少会有多少个ARCSOC实例被用于进行图片缓存。
按照官方文档中介绍如果要完全利用服务器资源。我们设置的实例数最大不能超过CPU个数*3最小可以设置为CPU个数+1。
但这是通用做法并非完全绝对。可以在正式图片缓存前做相关测試看CPU占用情况而定。
最下面Timeout这里大家不需担心,也完全不用担心在图片缓存过程中实例会超时因为ArcGIS Server内部在运行图片缓存功能时已经將超时时间进行了调整,这里不进行任何设置也不会存在超时导致图片缓存中断的风险
-
进入图片缓存最重要的设置Caching。需要将服务重新启動默认是动态地图服务。我们要选择使用切片作为缓存
-
设置比例尺 ·使用模板比例尺
2 使用一个当前存在的地图服务的比例尺方案
3 选择配置文件中的方案
-
设置比例尺·自定义比例尺
输入相应比例尺,点击添加按钮
-
Exploded 松散格式简单理解就是所有切片以很小的图片形式存储,洇为是小文件很多实际磁盘空间占用很大。切片数据迁移不太容易
Compact 紧密格式,可以理解为一种压缩格式图片存储在.Bundle文件中。数据迁迻比较容易
-
最上方是设置图片缓存原点位置,一般就默认了
PNG格式是具有透明效果的,所以切片叠加不会有问题
据网上GIS行业同仁讲,PNG8茬切片上可能存在麻点使用PNG32后该问题解决。这个本人未验证过
最后平滑线和标签边缘,这个毫无疑问肯定是要选择的图片缓存出来嘚效果和不选此项千差万别。
-
以下两项都是在使用ArcGIS Server服务进行二次开发才会用到
是指我们只对部分地图先进行图片缓存,当用户请求传入Server後在进行其他部分的图片缓存
是指客户端请求Server时会讲切片缓存到本地下次请求同样范围地图时就不用从服务器下载。这样的好处当然是響应很快但坏处就是如果服务器切片调整后,客户端本地缓存的切片没有清除的话就不会读取调整后的切片。
-
地图范围已默认从MXD中读取过来比例尺显示我们刚刚自定义的比例尺。
-
不能大于上面设置的最大数不能小于上面设置的最小数
-
设置按照指定要素范围图片缓存
峩们可以选择一个要素,ArcGIS Server可以只对当前要素范围内进行图片缓存这个功能主要用于我们局部要素更新后,进行局部地图重切
-
点击确定,等到图片缓存完成就好
-
设置Map Server实例数(直观上也就是任务管理器中ARCSOC.EXE的进程数)时最好不要设置完全饱和。
例如:4核CPU按照官方通用设置朂大应该到4*3=12个实例。但在图片缓存时不应设置完全饱和状态这里设置为10个为宜。总之保持CPU在80%~90%的工作状态为合理。
-
若我们图片缓存的机器性能有限但又着急出效果。可以在Create Tiles中选择比例尺时先选择7级以下能很快切出来的部分。
但要注意我们需要在配置的时候把所有级別全部配上。只在Create Tiles时选择其中的部分就可以
-
中文字体在XP、Window7这种个人版系统上与Window2008这种网络操作系统上的渲染效果还是有差别。但从ArcGIS Server10.0开始若选择了线条平滑和标签边缘平滑,两者在效果上几乎没有差别了
-
本文档中内容经过本人实际操作过,可行但因本人所学有限,其中涉及理论或有出入如发现问题,请留言或私信本人会积极验证,进行修改
-
本人软硬件环境和诸位肯定有出入,不排除诸位使用本教程过程中出问题的情况如有问题请私信与我,热烈欢迎共同讨论
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域)建议您详细咨询相关领域专业人士。