ArcGIS Server 服务器缓存机制

    

本文部分取自ESRI翻译部分及网络,其他文字版权归小能所有,转载麻烦标明出处,谢谢! 写作过程中也参阅了大量其他网络文档,如果您觉得侵犯版权,请和我联系:[email protected] 

    Google Maps之前,各种网络地图在技术上采用传统WebGIS 的方式,使用Java Applet、SVG、动态生成地图图片,客户每产生一次新的地图请求,服务器再重新生成地图图片发送至客户端。自从Google Map推出Tile Map Image(瓦片式地图)方式提供的地图位置服务之后,国内的go2map、mapabc、mapbar等专业地图搜索公司纷纷仿效,相继推出了基于地图瓦片金字塔模型的位置搜索新模式服务。

 

 

1

 

 

    基于地图瓦片服务框架区别于传统WebGIS主要体现在两点:

    (1) 金字塔模型瓦片地图库

    传统的WebGIS是实时请求地图服务器传输地图的,反应了地图的现时性;而基于地图瓦片服务框架首先预生成规矩的瓦片地图存储于硬盘目录下,地图以链接图片的方式快速定制。例如在Google地图中,地图数据由大量的正方形图片组成。共有18级缩放比例,每个地图图片都有坐标值,由X和Y值构成。比例因子zoom取值范围是(0-17)。操作地图滑竿显示更大比例尺地图时,图片的数量发生裂变。两种模式在请求及响应的速度方面有明显的差异,基于地图瓦片服务框架的响应速度要快于传统的WebGIS,同时对地图服务器的负载也相应小一些。

    (2) 地图服务(接口)由专业化向平民化、互联网各种技术的集聚

    在构建好瓦片地图图片库之后,基于地图瓦片服务框架可以脱离GIS平台,通过现有的互联网技术(如搜索引擎、Ajax、数据库技术等)实现空间位置服务;传统WebGIS的每一项功能服务都是通过GIS平台运算实现的。两种模式各有优劣,基于地图瓦片服务框架在实现复杂分析(如缓冲区分析、路径分析)时有一定难度(可借助GIS平台的支持,也可重写算法),传统WebGIS消耗资源(网络负载、服务器负载)相对比较大。

2.jpg

 

    仿效Google的Tile Map Image方式,ArcGIS Server在其9.2的版本中增加了地图缓存技术,即ArcGIS Server 地图服务在发布后,将可以依照指定的缓存级数将数据库中的地图数据转换成不同级别的静态图片并存储在Web服务器中。客户端从缓存中获取静态的瓦片来代替动态渲染的地图服务,在ArcGIS Server中被称作缓存地图服务。ArcGIS Desktp以及ArcGIS Server Web ADF程序可以使用通过虚拟目录来在地图服务中使用切片缓存。

    因此,可以这样认为,一个缓存的地图服务就是一个能够利用静态图片来快速提供地图的服务。一个完整的缓存地图服务包括:

    缓存:这是由包含了不同等级集合的缓存地图图片以及描述其Cache的框架的文件(Conf.xml)组成的地图服务缓存目录。

    Web服务器中的地图缓存是一个包含了不同级别的地图瓦片的目录。一个缓存被组织成一个三维的网格,从而与其目录结构相对应,其目录结构中上层目录(用标签标明了不同的级别)包含的下级目录是按照不同行来分布的。同行切片是同一级比例尺寸,其像素尺寸用户可选择,如128,512,1024像素尺寸。切片是PNG-24的图片,图片根据默认的透明度设置背景颜色。如果地图文件中没有背景颜色设置,那么其背景图片将被设置成253.253.253。

    3.jpg

 

    Web服务器:Web服务器宿主着实际的地图服务,虚拟的地图缓存目录与真实的缓存目录相对应,当其虚拟路径不能直接访问时使用切片处理服务(Tile handler service)。

    ArcGIS Server:ArcGIS Server宿主地图服务实例,从而提供有关地图缓存的信息,当涉及地图查询、数据操作提供数据支持。

    使用地图缓存服务最大的好处是可以动态的改进客户端用来显示复杂的地图所花费的时间,一个客户端使用缓存地图服务获取和显示地图时仅仅只是受到其联系的带宽的限制,比如说,一个简单的2D的地图需要4秒去请求获取,使用动态地图服务可以使地图使用阴影和其他高级的图像属性渲染和显示地图,以及使用缓存地图服务只需要1秒钟就可以显示。因此使用缓存地图服务消除了需要牺牲图像质量来换取显示的代价。

4.jpg

 

    ArcGIS提供了多种方式来创建一个缓存地图服务,ArcCatalog、ArcToolBox、ArcToolBox、脚本语言命令行或者ArcEngine API都可以创造缓存地图服务,相对而言,ArcCatalog提供的方式简易易懂。

    启动ArcCatalog,进入GIS服务器管理界面,选择需要建立缓存的服务后右键选择“服务属性”,在其服务属性中选择“缓存”选项卡并设置缓存目录等

5

    点击生成按钮后可以对生成地图服务缓存进行参数设置,包括主机名、地图服务选择以及地图服务分级级别等参数后,其中缓存参数级别由用户自定义,填写完成后,点确定就可以生成地图缓存。

6

 

 

你可能感兴趣的:(server)