【问题标题】:Will hit-for-miss and hit-for-pass be removed from Varnish using BAN是否会使用 BAN 从 Varnish 中移除 hit-for-miss 和 hit-for-pass
【发布时间】:2020-05-14 08:58:09
【问题描述】:

我们的缓存控制标头仅在应用程序部署期间更改。我们当前的部署管道会在整个站点上触发 BAN 以在成功部署后刷新缓存。此BAN 是否还会从 Varnish 中删除任何命中未命中和命中一传对象?我们目前使用默认的 120 秒 TTL 进行命中率,但考虑到如果 BAN(或 PURGE)也会移除这些对象,因为事情永远不会无需部署即可神奇地变得可缓存

【问题讨论】:

    标签: caching varnish cache-control varnish-vcl


    【解决方案1】:
    1. Banning,不会刷新缓存,它会阻止内容被提供,事实上,它会禁止将保留在缓存中的内容,直到 TTL 到期或直到它被请求击中:https://docs.varnish-software.com/tutorials/cache-invalidation/

    2. 清除将是这里的最佳方法

    3. 是的,如果您禁止,即“ReqURL ~ /”

    4. ,则禁止将对缓存中的每个对象产生影响

    【讨论】:

    • 因此,如果我在 /foo 上获得了一次命中并设置了两个小时的 TTL,那么在 1 小时后部署一个新版本,为 /foo 添加缓存能力,然后在相同的情况下执行 BAN未命中命中的资源将被刷新,并且 /foo 从那里将能够从缓存中提供服务?例如,对 /foo 的下一个请求将不会被命中?此外,在这种情况下,是否最适合使用“hit-for-miss”或“hit-for-pass”?
    猜你喜欢
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 2016-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-30
    • 2016-02-26
    相关资源
    最近更新 更多