清漆恩典模式不起作用

时间:2014-02-03 08:17:36

标签: varnish

指的是https://www.varnish-software.com/static/book/Saving_a_request.html#exercise-grace 我尝试集成页面上描述的宽限模式的最基本配置。

但它没有完全发挥作用。测试结果应为:

  1. “通过本练习,您应该看到只要内容在常规​​TTL中,就没有区别。”
  2. “一旦TTL过期,第一个请求内容的客户端应该停留15秒,而第二个客户端应该获得加盖的副本。”
  3. 第1点工作正常,但第2点没有。

    超时后请求页面的第一个客户端必须等待结果。没关系。但就我而言,针对文档,所有其他客户端也必须等待请求。似乎varnish不承认该请求已被其他客户端处理。

    任何人都有一个想法,这里错了。我正在使用v3.0.5 of varnish。

    这是我的配置:

    backend default {
        .host = "127.0.0.1";
        .port = "80";
    }
    sub vcl_recv {
            set req.grace = 10s;
    }
    
    sub vcl_fetch {
           set beresp.grace = 10s;
    }
    

    那就是测试cgi脚本

    #! /bin/sh
    sleep 15
    echo "Content-type: text/plain"
    echo "Cache-control: max-age=20"
    echo
    echo "Hello world"
    date
    

0 个答案:

没有答案