Varnish 返回 503,FetchError(无法获取存储)

Varnish 返回 503,FetchError(无法获取存储)

在当前设置中,我们遇到了 Varnish 的问题,我们正在运行 CentOS 5.7 x86_64 xenpv,带有 Cpanel WHM,托管在 VPS.net 上。

有时我们会从 Varnish 收到 Guru Meditation,当我们使用以下命令查看 varnishlog 时,varnishlog -d -c -m TxStatus:503它会返回类似以下内容的输出:

   15 VCL_call     c recv
   15 VCL_acl      c NO_MATCH devs
   15 VCL_return   c pass
   15 VCL_call     c hash
   15 Hash         c ****
   15 Hash         c *************
   15 VCL_return   c hash
   15 VCL_call     c pass pass
   15 Backend      c 12 default default
   15 TTL          c 1835862523 RFC 0 -1 -1 1332454056 0 1332454055 375007920 0
   15 VCL_call     c fetch hit_for_pass
   15 ObjProtocol  c HTTP/1.1
   15 ObjResponse  c OK
   15 ObjHeader    c Date: Thu, 22 Mar 2012 22:07:35 GMT
   15 ObjHeader    c Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8e-fips-rhel5 mod_bwlimited/1.4 mod_fcgid/2.3.6
   15 ObjHeader    c X-Powered-By: PHP/5.3.9
   15 ObjHeader    c Expires: Thu, 19 Nov 1981 08:52:00 GMT
   15 ObjHeader    c Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
   15 ObjHeader    c Pragma: no-cache
   15 ObjHeader    c Content-Type: text/html; charset=utf-8
   15 ObjHeader    c X-Cacheable: NO:Cache-Control=private
   15 FetchError   c chunked read_error: 12 (Could not get storage)
   15 VCL_call     c error deliver
   15 VCL_call     c deliver deliver

据我所知,我们可以尝试增加 nuke_limit,但目前我们的 nuke_limit 为 500,而运行时varnishstat -1 -f n_lru_nuked我们“仅”得到总共 1031,即使我们已经看到错误发生在多个页面上。

当我们运行 top 查看 Varnish 使用了多少内存时,它只显示使用了 763 米,尽管我们已将其设置为允许使用 1200 米。

知道可能是什么问题吗?

答案1

“无法获取存储” 对我来说意味着 Varnish 无法存储它想要获取的对象。您是否达到了最大缓存大小?您可以发布 varnishstat 的输出吗?

相关内容