Provided by: varnish-modules_0.12.1-1build1_amd64 bug

NAME

       vmod_softpurge - purge vmod

SYNOPSIS

       import softpurge [from "path"] ;

DESCRIPTION

       Softpurge is cache invalidation in Varnish that reduces TTL but keeps the grace value of a
       resource.

       This makes it possible to serve stale content to users if the backend is  unavailable  and
       fresh content can not be fetched.

       Example:

          vcl 4.0;
          import softpurge;

          backend default { .host = "192.0.2.11"; .port = "8080"; }

          sub vcl_recv {
              # Return early to avoid return(pass) by builtin VCL.
              if (req.method == "PURGE") {
                  return (hash);
              }
          }

          sub vcl_backend_response {
              # Set object grace so we keep them around after TTL has expired.
              set beresp.grace = 10m;
          }

          sub vcl_hit {
              if (req.method == "PURGE") {
                  softpurge.softpurge();
                  return (synth(200, "Successful softpurge"));
              }
          }

          sub vcl_miss {
              if (req.method == "PURGE") {
                  softpurge.softpurge();
                  return (synth(200, "Successful softpurge"));
              }
          }

CONTENTS

       • VOID softpurge()

   softpurge
          VOID softpurge()

       Performs a soft purge. Valid in vcl_hit and vcl_miss.

       Example:

          sub vcl_hit {
              if (req.method == "PURGE") {
                  softpurge.softpurge();
              }
          }

                                                                             VMOD_SOFTPURGE(Soft)