You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MapProxy的refresh_before选项失效问题求助

MapProxy refresh_before 配置失效原因分析(v5.0.0)

针对你遇到的层级16的refresh_before(2分钟)不生效问题,结合配置和命令,从以下核心点排查:

1. 对refresh_before的作用理解有误

refresh_before不是控制两次seed进程的执行间隔,它的核心作用是:当缓存瓦片的「过期时间」与当前时间的差值小于设置的时长时,seed才会触发该瓦片的重新生成。它是瓦片刷新的判断阈值,而非进程定时执行的间隔配置。

2. mapproxy-seed默认是一次性执行

你当前的启动命令是单次执行seed任务,进程跑完就退出,不会自动重复执行。如果需要周期性触发缓存刷新,必须借助系统定时任务实现:

  • Linux:用cron定时调用mapproxy-seed命令
  • Windows:通过任务计划程序定期执行命令

3. 缺失缓存expires配置

refresh_before依赖缓存的expires选项工作——它需要基于瓦片的过期时间来计算是否需要刷新。检查你的mp_alkis.yaml中adv_alkis_tatsaechliche_Nutzung_Cache的配置,必须设置expires(单位:秒),例如:

caches:
    adv_alkis_tatsaechliche_Nutzung_Cache:
        sources: [你的WMS源配置]
        expires: 3600  # 示例:设置缓存1小时后过期

如果没有配置expires,refresh_before没有判断依据,自然不会生效。

4. 瓦片未达到刷新触发条件

即使配置正确,只有当目标层级(16)的瓦片距离过期时间小于2分钟时,seed才会重新生成这些瓦片。如果你的瓦片都是刚生成的,距离过期时间还很远,seed执行时不会进行任何刷新操作,看起来就像配置失效。

内容的提问来源于stack exchange,提问作者TEC HIB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 07:42:37