天天看點

varnish purge

剛剛學習使用varnish,這個章節測試varnish的purge功能。

一、 配置vcl,在vcl中添加如下代碼。可以參考官網配置,http://www.varnish-cache.org/trac/wiki/VCLExamplePurging

  1. sub vcl_hit { 
  2.         if (req.request == "PURGE") { 
  3.                 set obj.ttl = 0s; 
  4.                 error 200 "Purged."; 
  5.         } 
  6. sub vcl_miss { 
  7.         if (req.request == "PURGE") { 
  8.                 error 404 "Not in cache."; 
  9.         } 

二、 使用varnishadm來purge

1. 清除某個檔案,$表示正規表達式的結尾附;

  /opt/varnish/bin/varnishadm -T :4488 purge.url test.jpg$

2. 清除某個檔案夾

  varnishadm -T :4488 purge.url ^/p_w_picpaths/.*$

三、通過varnishlog來驗證,通路某個元素,每重新整理一次,x-cache-hits會增加

  [root@VMSHcentos01 ~]# /opt/varnish/bin/varnishlog -i TxHeader

   13 TxHeader     c Date: Fri, 13 May 2011 06:28:18 GMT

   13 TxHeader     c Via: 1.1 varnish

   13 TxHeader     c X-Varnish: 1688554888

   13 TxHeader     c Last-Modified: Thu, 14 Apr 2011 03:52:45 GMT

   13 TxHeader     c Cache-Control: max-age=31536000

   13 TxHeader     c Connection: keep-alive

   13 TxHeader     c X-Cache: HIT

   13 TxHeader     c X-Cache-Hits: 1

   13 TxHeader     c Date: Fri, 13 May 2011 06:28:26 GMT

   13 TxHeader     c X-Varnish: 1688554889

   13 TxHeader     c X-Cache-Hits: 2

/opt/varnish/bin/varnishadm -T :4488 purge.url 82839fc8-f49c-4191-bf02-420fe0c40310.jpg$

繼續閱讀