table of contents
other versions
| VMOD_SOFTPURGE(Soft) | VMOD_SOFTPURGE(Soft) |
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();
}
}