Varnish如何知道缓存每个响应的时间有多长?

cal*_*lum 7 caching reverse-proxy varnish

Varnish只是跟随Cache-Control原始服务器的标题吗?

还有其他方法可以控制缓存响应的时间吗?例如,您是否可以告诉Varnish"无限期"缓存响应(即"直到另行通知"),然后在您知道基础数据发生变化时明确指示它从缓存中删除该对象?

(请注意:我从未使用过Varnish;我只是想弄清楚它是否适合即将开展的项目.)

Łuk*_*iak 6

这些是非常基本的问题.我认为你应该从阅读https://www.varnish-cache.org/docs/上的优秀文档开始

回答你的问题:这取决于你如何配置清漆.

您可以保留默认值,以便它将使用到期;

您可以将其设置为每个域/后端/文件类型/ cookie具有不同的TTL(生存时间)...

如果你用ie设置它.1年缓存TTL,您可以通过"清除"特定地址/网址或整个域将其从缓存中删除.

您可以通过两种方式完成此操作:

  1. 如果您在vcl文件中配置了PURGE HTTP方法
  2. 通过在varnishadm/varnish控制台中使用purge命令

https://www.varnish-cache.org/docs/2.1/tutorial/purging.html