【问题标题】:TileWMS tiles flickering on geoserver web cache requestTileWMS 瓦片在地理服务器 Web 缓存请求上闪烁
【发布时间】:2019-06-25 08:01:57
【问题描述】:

我一直在 API 页面(和谷歌)上寻找解决方案,但设置一些参数并没有让我更进一步。也许我可以在这里得到答案:)

是否可以在浏览器端缓存 WmsTiles,这样如果我移动地图就不会出现短暂的闪烁? 我使用带有 Web 缓存(透明切片)的地理服务器,但 wms 请求需要几秒钟才能从 GWC 缓存中传送所有切片。因此,如果我移动地图,则会不断重新加载,但没有任何改变。

有什么解决办法吗?尝试将 'cacheSize' 设置为 2048,但没有发现任何变化。

谢谢

伊戈尔

【问题讨论】:

  • 2048 是默认的cacheSize,因此您需要将其放大才能看到任何差异。您也可以尝试在层构造函数中使用preload 选项。
  • tnx.不确定这个选项是否以某种方式被贬低。无论如何,在我的情况下,我们谈论的是从地理服务器获取的特定地图边界的最大 50-100 个图块。只是稍微前后移动地图总是会重新加载图块。
  • 增加到 65536 甚至没有丝毫变化...

标签: browser-cache openlayers-3 geoserver


【解决方案1】:

浏览器不会只是简单地从其缓存中加载图像。它将首先执行 http 请求,服务器将回答 304 - not modified(将隐式重定向到缓存),然后浏览器将显示缓存的版本。如果 GET 和 304 响应之间存在延迟,则浏览器在这段时间内不会显示任何内容。 移动地图也会重新渲染它。如果还有其他事情导致重新渲染变慢,你会得到“滞后”。

解决这个问题的诀窍可能是使显示地图的div 大于窗口(或显示的区域)并切断溢出,以便它在移动到字段时已经呈现看法。从未尝试过,所以我不确定这是否可行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-24
    • 2010-10-25
    • 2019-11-01
    • 1970-01-01
    • 2019-04-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多