GeoWebCache

GeoWebCache可以帮助用户缓存地图数据,您可以添加多种来源数据执行缓存,方便以后在这款软件读取图块数据,方便在设计其他地图软件的时候快速导入数据,您可以直接在软件上配置WMS-网络地图服务、WMS-C-WMS切片客户端、WMTS-Web地图切片服务、TMS-平铺地图服务、KML、谷歌地图、必应地图等缓存服务项目,让软件可以自动缓存地图数据,软件可以监控全部缓存任务,可以对任务截断,可以统计缓存数据,提供的功能还是比较丰富的,适合需要管理地图缓存的朋友使用!

GeoWebCache软件功能

什么是GeoWebCache?

GeoWebCache是一个Java Web应用程序,用于缓存来自各种来源(例如OGC Web地图服务(WMS))的地图图块。它实现了各种服务接口(例如WMS-C,WMTS,TMS,Google Maps KML,Virtual Earth),以加速和优化地图图像的交付。它还可以重新组合图块以与常规WMS客户端一起使用。

地图通常是静态的。由于大多数映客户端每次查询时都会渲染WMS(Web地图服务)数据,因此可能导致不必要的处理并增加等待时间。GeoWebCache通过根据需要保存(缓存)地图图像或图块来优化这种体验,实际上是充当客户端(例如OpenLayers或Google Maps)和(例如GeoServer或任何与WMS兼容的)之间的代理。当请求新的地图和图块时,GeoWebCache会拦截这些调用并返回预先渲染的图块(如果已存储),或根据需要调用来渲染新的图块。因此,一旦存储了图块,地图渲染的速度就会提高许多倍,从而大大改善了用户体验。

在上图中,GeoWebCache计算机上的蓝色框表示切片存储。理想情况下,无需咨询WMS就可以从该存储中回答大多数请求。因此,指向客户端的箭头要大得多,因为GeoWebCache每秒可以响应数百或数千个请求。

GeoWebCache甚至可以在地图不是完全静态的情况下使用,因为它允许图块有选择地到期,从而使数据保持最新状态。在这方面,GeoWebCache充当了地图渲染的通用加速器。

GeoWebCache软件特色

1、WMS-Web Map

网络地图服务(WMS)是一个OGC标准,支持的请求,如getcapabilities,getmap和getfeatureinfo。GeoWebCache本机支持前两个,并且可以将其他请求代理到WMS后端。GeoWebCache的开发考虑到了WMS 1.1.0,但可以通过使用可修改的参数来支持高程和高度。

为了获得良好的能,请求应符合GeoWebCache存储的图块。但是,许多WMS客户端无法发出平铺的请求。从1.2.2版开始,GeoWebCache可以重新组合图块以回答任意WMS请求

2、WMS-C-WMS切片客户端

WMS切片客户端建议,或简称WMS-C,是OSGeo提出的一项建议,用于使用WMS发出切片请求

3、特殊的HTTP响应头

当服务于切片请求时,GeoWebCache会记录一些标准和自定义的HTTP响应标头,以帮助调试问题或遵守HTTP 1.1传输控制机制。

GeoWebCache使用说明

网格集和网格子集

栅格集和栅格子集是指GeoWebCache服务的图层的空间参考系统。从本质上讲,正如Tiles中所介绍的那样,GeoWebCache与参考系统无关。当GeoWebCache向WMS发出请求时,它使用网格集和网格子集将其内部切片索引转换为WMS可以理解的空间请求。

甲gdset是一个全球的定义(即,不是层特异)指定:

空间参考系统(EPSG代码)

一个边界框,描述范围,通常是上述参考系统的最大范围

比例分母,分辨率或缩放级别的列表之一

平铺尺寸(以像素为单位)(适用于所有缩放级别)

(可选)像素大小(用于计算比例)。默认值为0.28mm /像素,对应于90.71428571428572 DPI。

甲gdsubset为第一层的具体定义指定:

图层的网格集

(可选)该层的边界框(它必须是gdSet范围的子集)

(可选)缩放级别列表(它必须是gdSet中定义的子集)

默认情况下,此设置为geowebcache.xml。

从网格集到图块

以下是在特定缩放级别下对网格集和网格子集的解释过程的每个缩放级别的描述,并确定了请求哪些图块。

初始边界框-假设网格集边界框为(-10.0,-30.0,85.0,21.0),并且缩放级别的分辨率设置为11.25度/ 256像素= 0.04395(比例1:1.8e7)

网格集在边界框的左下方对齐-指定的边界框与整数的图块不对应,因此GeoWebCache将边界框扩展为(-10.0,-30.0,91.25,26.25)。

网格集与边界框的左上角对齐-默认值是将边界框与左下角对齐。这是通过平铺WMS客户端和TMS来假定的。但是,对于WMTS,将其对准左上角更有意义。如果设置为true,则GeoWebCache会向底部扩展。在这种情况下,边界框变为(-10.0,-36.75,91.25,21.0)。

网格子集边界框-由于特定图层可能无法覆盖整个网格集,因此GeoWebCache使用了一个网格子集,该子集只能指定一部分网格集。如果未指定范围,则假定该图层覆盖整个网格集。本示例使用(-14.0,-15.0、48.0、16.0)的网格子集范围。

网格子集图块-GeoWebCache将范围扩展到最接近的图块边界。

对应的XML

上面的示例可以通过在中设置的以下配置详细来实现 geowebcache.xml。

Metatiles

一个metatile是一个更大的拼接片组合几个瓦片。GeoWebCache将从WMS请求metatile,将metatile切成较小的切片以进行缓存。

上面的示例显示了一个3×3的metatile,覆盖了9个常规图块。

默认设置是3×3的metatile,带有256像素的正方形图块,因此GeoWebCache将请求768 x 768像素的metatile。

为什么要使用metatiles?

分割的最大优势是避免重复跨越一个以上图块的要素的标签。道路标记就是一个例子,但是任何线或多边形都可以存在于图块边界的边缘,因此在每个图块上仅标注一次。

在图块边界上显示重复标签的示例

中继也可以实现更好的整体能。WMS后端生成一个大图像而不是许多小图像通常更快,因为WMS仅会产生与一个请求相关的开销。

为什么不使用分位数?

metatiling的缺点是,由于metatile较大,因此渲染速度比任何单个tile都要慢。

内存消耗也可能成为问题。计算图块的内存量与metatile的大小,图块的颜色深度以及其他因素(例如SLD中FeatureTypeStyle元素的数量)成正比。具有256个正方形像素图块且具有32位(4字节)颜色深度的单个3×3元数据需要至少(256 * 256)*(3 * 3)* 4 = 23592字节= 2304 kB = 2.25 MB的内存来进行计算。

防止双重转移

多个后端还支持用于指示客户端正在平铺的参数。如果在GeoWebCache中使用元数据转移,通常应将其设置为False,以防止后端对元数据进行元数据转移。例如,如果您使用3×3 metatiling(768×768像素),并且tiled = true,则可能会将这些metatiles进行metatile,从而生成2304×2304画布。

笔记 如果用作后端,对于非256×256像素的请求,GeoServer将忽略该指令。

配置Metatiling

可以在每层基上配置元数据转移,也可以在功能文档中为所有层配置元数据转移。前者配置在中geowebcache.xml,后者配置在中geowebcache-core-context.xml。

笔记 您可以在一个metatile设置下播种到特定缩放级别,减少mettiling,以确保在未播种地图的情况下有足够的响应时间。

存储组件

GeoWebCache过去曾经具有三个存储组件,分别负责切片和切片元数据处理:Blob存储,元存储和磁盘配额子系统。

该Blob存储是瓷砖的存储机制,其默认的实现是基于文件系统的。

该metastore是约瓷砖,如瓷砖创建时间,大小和请求参数的使用的元的可选H2基于存储机制。

在磁盘配额机制使用NoSQL的嵌入式数据库来跟踪瓷砖磁盘使用情况和到期基于用户设置的策略牌。

从GeoWebCache 1.4.0开始,该元存储库已替换为基于完整文件系统的解决方案,从而使Blob存储区负责以前由元存储库跟踪的。

默认情况下,这两个存储的存储位置都是servlet容器指定的临时存储目录(geowebcache将在其中创建一个名为目录)。如果该目录不可用,GeoWebCache将尝试在TEMP环境变量指定的位置创建一个新目录。在其中,将存在一个磁盘配额目录(diskquota_page_store默认情况下称为该目录),以及一个以每个缓存的层(例如topp_states层topp:states)命名的blobstore目录。

如何配置层

GeoWebCache的主要配置文件是geowebcache.xml。默认情况下,它与cache位于同一目录中。如果配置文件不存在,GeoWebCache会将默认配置文件从复制WEB-INF/classes/geowebcache.xml到缓存目录。

除非指定,否则本节中的所有配置更改都将在编辑文件时完成geowebcache.xml。

更改geowebcache.xml的位置

配置文件的位置在中设置WEB-INF/geowebcache-core-context.xml。如果要为配置文件设置其他位置,请打开geowebcache-core-context.xml并查找引用的标签gwcXmlConfig:

取消注释底部标签,并指定要放置的位置。constructor-arg value= …>geowebcache.xml

编辑XML的提示

手工编辑配置文件可能很棘手,因为最小的错字可能会导致GeoWebCache停止运行。此外,XML元素的顺序至关重要!

建议使用特殊的XML编辑工具,或者至少使用带有语法突出显示的文本编辑器。此外,将编辑器与XML模式验证一起使用将立即告诉您是否缺少标签或元素顺序混乱。

推荐使用的两个免费编辑器都是:XML,它们都支持XML验证。

1、jEdit(跨平台)

2、记事本++(仅Windows)

也可以在文本编辑器环境之外验证XML文档。

1、在W3C验证服务允许你上传进行验证的XML文件。另一个这样的服务是Validome XML Validator。

2、xmllint 应用程序(仅适用于UNIX / Linux)

GeoWebCache在启动过程中会针对模式验证XML文件,并会报告错误,因此,请确保servlet容器志,以确保各层的行为不符合预期。

模式

所有配置选项和参数最终都位于XML模式中。虽然您现在正在阅读的文档旨在翻译和解释模式以简化GeoWebCache配置,但是专家用户可以查看模式以确定所有详细,包括变量类型,元素顺序等等。

GeoWebCache架构- http://geowebcache.org/schema//geowebcache.xsd

GeoWebCache模式文档- http://geowebcache.org/schema/docs//

确保将替换为当前版本号。

上一篇 2023-02-16
下一篇 2022-12-31

相关推荐

  • GeoWebCache

    GeoWebCache可以帮助用户缓存地图数据,您可以添加多种来源数据执行缓存,方便以后在这款软件读取图块数据,方便在设计其他地图软件的时候快速导入数据,您可以直接在软件上配置...
正在提交中,请稍等片刻...

发表回复

请登录后评论...
登录后才能评论

评论列表 (0条)