清漆缓存不会第一次命中
Varnish cache doesn't hit first time
我刚刚学习并实施了 varnish 反向代理来提高我的网站速度。
一切正常,但有一些小问题困扰着我。
出于某种原因,当我第一次检查页面 TTFB 时,我得到 .999s,但是,当我重新运行测试时,数字下降到 .237s。
我使用以下网站检查 TTFB:
https://www.webpagetest.org
我的网站是:
https://www.findfestival.com/
这让我想知道对网站的第一个请求是否命中了缓存。当我使用 curl 时,我可以看到 x-varnish,但奇怪的是第一次点击链接比第二次点击链接慢。 (特别是在移动设备上)
- 你能帮我理解为什么第一次 Varnish 缓存没有命中吗?
这是我的 default.vcl 是:
谢谢,
PS,我已经看到这个 post 并且已经尝试过这个解决方案,但没有成功!
Varnish Cache first time hit
看到 X-Mod-Pagespeed
在你的 header 和简约的 VCL 中,结论是你需要看一下 Downstream Caching 并确保 PageSpeed 不会发送Cache-Control: max-age=0, no-cache
这在很大程度上破坏了 Varnish 缓存。
根据我自己的经验,即使应用了下游缓存配置,Pagespeed 也不能很好地与 Varnish 配合使用。
它 "loves" 发送上述 header 无论如何。即使您设法关闭此行为,它也会导致 PageSpeed 自己的资产没有适当的 Cache-Control
header 以及一些更有趣的问题,例如在必须进行重新信标时导致 Varnish "hit-for-pass" - 这真的很糟糕,会进一步破坏缓存。
也可以看看 possible configurations。您可能希望将 PageSpeed 置于您的 SSL 终结器级别(选项 #1)——这样您就不需要下游缓存配置并且 PageSpeed 将是 Varnish 的 "in front"。
我刚刚学习并实施了 varnish 反向代理来提高我的网站速度。
一切正常,但有一些小问题困扰着我。
出于某种原因,当我第一次检查页面 TTFB 时,我得到 .999s,但是,当我重新运行测试时,数字下降到 .237s。
我使用以下网站检查 TTFB: https://www.webpagetest.org
我的网站是: https://www.findfestival.com/
这让我想知道对网站的第一个请求是否命中了缓存。当我使用 curl 时,我可以看到 x-varnish,但奇怪的是第一次点击链接比第二次点击链接慢。 (特别是在移动设备上)
- 你能帮我理解为什么第一次 Varnish 缓存没有命中吗?
这是我的 default.vcl 是:
谢谢,
PS,我已经看到这个 post 并且已经尝试过这个解决方案,但没有成功!
Varnish Cache first time hit
看到 X-Mod-Pagespeed
在你的 header 和简约的 VCL 中,结论是你需要看一下 Downstream Caching 并确保 PageSpeed 不会发送Cache-Control: max-age=0, no-cache
这在很大程度上破坏了 Varnish 缓存。
根据我自己的经验,即使应用了下游缓存配置,Pagespeed 也不能很好地与 Varnish 配合使用。
它 "loves" 发送上述 header 无论如何。即使您设法关闭此行为,它也会导致 PageSpeed 自己的资产没有适当的 Cache-Control
header 以及一些更有趣的问题,例如在必须进行重新信标时导致 Varnish "hit-for-pass" - 这真的很糟糕,会进一步破坏缓存。
也可以看看 possible configurations。您可能希望将 PageSpeed 置于您的 SSL 终结器级别(选项 #1)——这样您就不需要下游缓存配置并且 PageSpeed 将是 Varnish 的 "in front"。