【发布时间】:2012-09-10 20:11:19
【问题描述】:
微缓存和 Nginx 可以真正加快应用程序的速度。 是否可以在 Varnish 中使用微缓存(或类似的东西)?
【问题讨论】:
-
你能说得具体一点吗?
标签: caching varnish varnish-vcl
微缓存和 Nginx 可以真正加快应用程序的速度。 是否可以在 Varnish 中使用微缓存(或类似的东西)?
【问题讨论】:
标签: caching varnish varnish-vcl
是的,您可以将 Varnish 设置为微缓存内容。
对于其他阅读器来说,微缓存是一个透明的过程,其中缓存将不被缓存的内容副本保存在本地,并在指定的时间内提供服务。
例如,您可能有一个经常更新的主页,并且没有在该站点的标题中设置缓存。但是,您的应用程序在性能较低的 VM 上运行,并且无法处理许多请求。微缓存可以通过在短时间内静默地从缓存中提供主页(并且不发送标头)来缓解此问题。
在 Varnish 中,这是通过 TTL 设置实现的。这告诉 varnish 在指定的时间内缓存内容。
如果您使用 TTL,您还应该使用 GRACE 设置 - 如果后端没有及时响应,这会告诉 varnish 在指定的时间内继续提供缓存的内容。
TTL 的另一个优点(我相信默认值为 120 秒)是 varnish 仅将未缓存内容的第一个请求发送到后端,将任何其他请求排队等待缓存准备好。
The Varnish Book 提供了一些示例,说明了各种宽限和 ttl 设置的可能性。
【讨论】: