播种机¶
- 作者
托马斯堡
- 联系
t在terriscope.fr的端口
- 作者
马修·库德特
- 联系
gmail.com上的mathieu.coudert
- mod mapcache附带了一个高级种子设定工具,其主要功能是:
可配置的种子设定线程数,以加快渲染速度
重新设置早于某个时间戳的磁贴的能力
能够在给定shapefile/ogr数据源的情况下为磁贴排序
使用¶
种子设定实用程序名为mapcache_seed,位于安装目录下(默认值为/usr/local/bin)。
命令行选项¶
选项有短版本和长版本(例如-c或--config)。
-b | --non-interactive : (在MapCache 1.12.0中新增) 在新的行上打印进度消息。
-c--config[file]:包含需要播种的数据集的mapcache.xml配置文件的路径。
[-C | --cache [override]] :覆盖选定平铺集使用的缓存(用于选择性地为回退/多层缓存设定种子)。
-d--dimension“dimension=value”:用于指定如果tileset支持维度,则使用哪个维度。可多次用于设置多个尺寸,例如-d“dim1=val1”-d“dim2=val2”。
-e——范围minx、miny、maxx、maxy:要播种区域的边界框。
-f——force:对现有瓷砖进行强制改造。
-g--网格[网格]:必须播种的网格的名称(选定的tileset必须引用给定的网格)。
-h--帮助:显示帮助。
-H | --header "HEADER=VALUE" : (在MapCache 1.12.0中新增) 用于指定键-值对,以在转发规则或HTTP请求中设置HTTP头。可以多次使用来设置多个标头,例如 -H "CUSTOM-HEADER1=VAL1" -H "CUSTOM-HEADER2=VAL2".
-i | --iteration-mode :任一“ drill-down “或” 扫描线 “。默认情况下,对g、WGS84和GoogleMapsCompatible网格使用向下钻取,对其他网格使用扫描线。使用此标志可覆盖。(扫描线以前称为”逐级“)
[-L | --log-failed [file]] :将失败的磁贴记录到文件中。
-m--模式:使用播种机的模式:“seed”、“delete”或“transfer”。默认值为SEED(模式:SEED)。
-m--metasize:播种时覆盖metatile大小,例如8、8。
-n--n threads:从WMS源请求分片时应使用的并行线程数。默认值为1,但如果WMS服务器能够承受并行请求,则可以设置得更高。(根据经验,这里选择的值永远不应该比WMS服务器上的CPU数量高很多。)
备注
此选项与 -p | --nprocesses 选项。
-o--旧的[时间戳现在]:仅种子瓷砖早于给定值。该值可以是字符串“now”,也可以是格式为年/月/日小时:分钟的日期,例如“2011/01/31 20:45”。
备注
应引用完整的时间戳。
-p--进程:用于从WMS源请求分片的并行进程数。
备注
此选项与 -n | --nthreads 选项。
警告
当处理多个进程(-p开关)和sqlite缓存后端时,在写入sqlite数据库时,在高并发性下可能会出现一些错误(错误:SQL逻辑错误或缺少数据库(1))。升级到sqlite>=3.7.15似乎可以解决这个问题。
[-P | --percent [number]] :从我们中止前的最后1000个允许的失败请求的百分比(默认值:1%,设置为0以在第一个错误时中止)。
-q--quiet:不要将进度消息打印到标准输出。
[-R | --retry-failed [file]] :重试--LOG-FAILED记录到文件的失败请求。
-t--tileset[tileset]:必须播种的tileset的名称。
-v--verbose:打印详细调试信息(如果在中编译)。
-x--传输:播种机在传输模式下运行时要传输的tileset。
-z--缩放最小缩放,最大缩放:必须设定的开始和结束缩放级别。
使用ogr/geos时的可选命令行选项¶
在编译时,如果在系统上找到了OGR和GEOS,那么seeder工具将支持仅为覆盖任意地理区域的瓷砖播种的附加选项。*重要事项:*请注意,目前,OGR数据源应与您正在播种的网格位于同一投影中,因为没有从数据源投影到网格投影的自动重投影。
-d--ogr datasource[ogr_datasource]:与空间源的ogr连接。有关支持的所有内容,请参阅OGR文档。在最简单的情况下(例如shapefile),这只是shapefile的完整文件名。
-l--ogr layer[ogr_layer]:对于包含多个层(例如Postgis,具有多个表)的数据源,确定将使用哪个层。
-s--ogr-sql[ogr-sql]:可以应用的ogr-sql表达式(请参见 OGR SQL )
-w--ogr where[ogr_where]:sql“where”表达式过滤返回值。如果数据源包含所有世界轮廓,则通常只用于选择给定国家的几何图形。
重要注意事项¶
种子设定实用程序必须与运行Web服务器的用户在同一用户帐户下运行。这是必需的,因此种子服务器可以访问种子服务器创建的分片上的权限,反之,种子服务器有权将文件写入由Web服务器创建的目录。
示例种子设定会话如下所示:
[user@host]$ sudo www-data
[www-data@host]$ /path/to/mapcache/src/mapcache_seed -c /path/to/www/conf/mapcache.xml [[options]]
[www-data@host]$ logout
[user@host]$
实例¶
在“osm”tileset中输入“g”(Google/Web Mercator)网格:::
./src/mapcache_seed -c mapcache.xml -t osm -g g
种子级别0到12:::
./src/mapcache_seed -c mapcache.xml -t osm -g g -z 0,12
给定一个包含世界国家轮廓的形状文件,只在陆地覆盖的区域播种(即跳过海洋)。另外,并行使用4个请求线程:::
./src/mapcache_seed -c mapcache.xml -t osm -g g -z 0,12 -n 4 -d /path/to/seed.shp
与预先相同,但仅为美国种子(注意引号用法,需要使用单引号“us”创建有效的SQL)::
./src/mapcache_seed -c mapcache.xml -t osm -g g -z 0,12 -n 4 -d /path/to/seed.shp -w "FIPS_A2='US'"
重置级别0到12(也可以通过删除级别0到12的缓存并执行经典种子操作来完成,但这样做不会减慢从Web客户端的访问)::
./src/mapcache_seed -c mapcache.xml -t osm -g g -z 0,12 -o now