Labels and purge scope
Adrien Bigot
adrien.bigot at smile.fr
Thu Dec 19 15:44:51 UTC 2019
Thank you for this confirmation !
Now I know this is the same cache, I will move the ban block in the main
VCL !
Thanks again !
Regards,
--
Adrien Bigot
Le 19/12/2019 à 16:14, Guillaume Quintard a écrit :
> Hi,
>
> Yes, labels are going to access the same cache , exactly like a
> reloaded vcl is going to use the same cache as the vcl it replaced.
>
> So, sending one request on any domain is going to work, but wouldn't
> it be more straightforward to just have the ban block in the main vcl,
> before you dispatch the request to a sub vcl?
>
> Cheers,
>
>
> On Thu, Dec 19, 2019, 15:07 Adrien Bigot <adrien.bigot at smile.fr
> <mailto:adrien.bigot at smile.fr>> wrote:
>
> Hello,
>
> I plan to use labels on a Varnish stack in front of multiple backends.
> I have a question about ban with multiple labels.
>
> My main.vcl will route requests in function of Host header for
> example like this :
>
> if (req.http.host == "front.mydomain.com
> <http://front.mydomain.com>") {
> return (vcl(l_varnish_fronts));
> }
> if (req.http.host == "api.mydomain.com
> <http://api.mydomain.com>") {
> return (vcl(l_varnish_api));
> }
>
>
> When we want to ban objects we do it with a HTTP BAN method on
> each varnish server. Varnish handle it the BAN request like that
> in each label's VCL file :
> sub vcl_recv {
> if (req.method == "BAN") {
>
> if (req.http.Cache-BanExpression) {
> ban(req.http.Cache-BanExpression);
> }
> return (synth(200, "Banned"));
> }
>
>
> My question is if I want to purge contents like this :
>
> curl -XBAN --header 'Cache-BanExpression:
> obj.http.Cache-Tags-TeamCompetitionReference ~ (^|,)6847(,|$)'
> http://myVarnishIP
>
> Will them be banned for all my Labels (if I include the proper vcl
> code in main.vcl), or do I have to make a request for each label
> like :
> curl -XBAN --header 'Host: front.mydomain.com
> <http://front.mydomain.com>' --header 'Cache-BanExpression:
> obj.http.Cache-Tags-TeamCompetitionReference ~ (^|,)6847(,|$)'
> http://myVarnishIP
> curl -XBAN --header 'Host: api.mydomain.com
> <http://api.mydomain.com>' --header 'Cache-BanExpression:
> obj.http.Cache-Tags-TeamCompetitionReference ~ (^|,)6847(,|$)'
> http://myVarnishIP
>
>
> In fact, I want to know if the cache is mutualized between labels
> ? If yes, is a solution exists to purge contents in all labels
> without sending multiple BAN requests ?
>
> Thanks in advance.
>
> Best regards,
>
> --
>
> Adrien Bigot
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org <mailto:varnish-misc at varnish-cache.org>
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20191219/748f30fa/attachment.html>
More information about the varnish-misc
mailing list