繁体   English   中英

清漆(松节油):在Magento中冲洗前重新加载页面

[英]Varnish (Turpentine): Reload page before flushing in Magento

在Magento 1.8中,Varnish确实非常快。 问题是刷新缓存中的页面。

例如:如果索引页上的某些内容已更改,则我使用以下命令进行刷新:

Mage::getModel('turpentine/varnish_admin')->flushUrl("^/$");

然后使用以下脚本将页面重新加载到缓存中:

$header[0] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; 
$header[] = "Accept-Language: de,en-US;q=0.7,en;q=0.3"; 
$header[] = "Cache-Control: max-age=0"; 
$header[] = "Connection: keep-alive"; 
$header[] = "Keep-Alive: 300"; 
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; 

$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $url); 
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0'); 
curl_setopt($curl, CURLOPT_HTTPHEADER, $header); 
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($curl);
curl_close($curl);

它正在工作,但是包含许多产品的索引页在未缓存时确实非常慢。 因此,每个用户在重新加载过程中都会看到此缓慢的页面。

这个问题有什么解决办法吗? 是否可以在刷新页面之前重新加载页面?

您需要实现宽限模式 (重新验证时也称为过期)。

在您的情况下,这将允许Varnish在发出刷新请求后提供索引页的陈旧副本。

宽限模式是一种减轻线程堆积的功能,允许Varnish在后端无法执行请求时继续处理请求。

...或慢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM