缓存分发 |
iEdge 代理 iServer 的服务后,可以转发客户端的请求给 iServer,并将结果缓存在本地供后续重用,从而为客户端提速。如果 iServer 中预先生成了地图的缓存,则可以通过缓存分发提前将地图瓦片分发给 iEdge。iEdge 收到地图瓦片后,就可以直接读取地图瓦片并响应客户端请求,无须再向 iServer 转发请求,从而进一步提升客户端访问地图的效率。
表 1 iServer 缓存分发能力介绍表
瓦片类型 | 配置文件 | 支持的分发策略 |
瓦片更新模式 | |||
按时分发 |
按地域分发 |
按比例尺分发 |
||||
二维瓦片 |
FastDFS 中存储的瓦片 |
- |
√ |
√ |
√ |
追加/覆盖 |
MongoDB 中存储的瓦片 |
- |
√ |
√ |
√ |
追加/覆盖 |
|
SMTiles 瓦片 |
.smtiles |
√ |
√ |
√ |
追加/覆盖 |
|
MBTiles 瓦片 |
.mbtiles |
√ |
√ |
√ |
追加/覆盖 |
|
UGCV5 瓦片 |
.sci/.inf |
√ |
√ |
√ |
追加/覆盖 |
|
GDP 瓦片 |
- |
√ |
√ |
√ |
追加/覆盖 |
|
三维瓦片 |
S3MB、S3M 瓦片 |
.scp |
√ |
√ |
不支持 |
追加/覆盖 |
TIN 地形瓦片 |
.sct |
√ |
√ |
√ |
追加/覆盖 |
|
影像瓦片 |
.sci3d |
√ |
√ |
√ |
追加/覆盖 |
注:1.当 iEdge 中没有 iServer 新分发的瓦片时,iServer 分发的瓦片将直接追加到相应服务的瓦片缓存存储路径下;当 iEdge 中的瓦片与 iServer 中分新发的瓦片重复时,将直接使用 iServer 新分发的瓦片覆盖 iEdge 中原有的瓦片。
2.如需要分发 MBTile,在选择分发的缓存类型时请选择“SMTile”。
在 iServer 中,您可以通过缓存分发模块,将二维瓦片( FastDFS、MongoDB 中存储的瓦片,以及SMTiles、MBTiles、UGCV5、GDP格式的瓦片)、三维瓦片(S3MB、S3M 瓦片; 地形瓦片(TIN 格式);影像瓦片(支持 WebP、PNG、JPG、DXTZ、JPG_PNG,暂不支持紧凑型影像))分发给代理节点 iEdge。
操作方法为,在 iServer 的旧版服务管理器中,依次点击“服务”、“代理”、“缓存分发”页面,点击按钮“创建分发任务”,进行相关设置后点击“创建任务”即可。
对二维瓦片,点击“添加目标节点”设置待分发的 iEdge 节点:
对三维瓦片,分别输入"目标节点(ip:port)"、"目标服务"、"缓存范围",这些参数的设置可参考二维瓦片介绍。对地形瓦片,除了支持设置以上参数外,还支持按比例尺分发,在选择配置文件后 iServer 将自动读取其比例尺,您可以选择您期望的比例尺进行分发。
注意:1.分发三维瓦片时要保证 iServer 分发的三维瓦片与目标服务中已有的瓦片的模型定位点一致。
2.分发三维影像瓦片时,要保证分发的三维影像瓦片与目标服务中已有的影像瓦片的瓦片大小、图片格式均一致。如目标服务中已有 256 * 256 大小的 PNG 格式的三维影像瓦片,则 iServer 分发的三维影像瓦片也要求为 256 * 256 大小的 PNG格式。
通过高级设置,您可以设置定时分发瓦片,或周期性更新分发瓦片。
创建任务后,您可以在“缓存分发”页面查看所有任务的列表,或停止、启动、删除正在执行的任务。
您也可以点击任务名称查看任务的详细信息,如分发的瓦片的信息,目标节点及存储类型等。
iEdge 会自动接收 iServer 分发的缓存,如地图瓦片、三维瓦片,并将其保存在代理后的地图服务、三维服务的缓存目录下。您可以在 iEdge 的地图服务组件的地图瓦片缓存配置中、三维服务提供者的三维瓦片缓存配置中,查看当前服务正在使用的缓存文件。
地图服务默认使用的地图瓦片类型为 SMTiles,因此地图瓦片分发后也默认存储在 SMTiles 中。如果您需要使用其他存储格式和存储位置来存放分发的瓦片,请在 iServer 分发瓦片前就修改该项配置。
关于服务配置的详细介绍请参考:服务实例的配置与管理。