Caching OSM tiles - how to not overload backends?
Damien Wetzel
dwetzel at atanar.com
Wed Jun 17 13:08:29 UTC 2020
Hi Tranxène50
I'm a reseller of Fastly in France a cdn based on a fork of varnish 2
maybe it could be a solution to minimize the backend traffic you receive somehow ?
i can make you test if needed
akamai has a solution they call waiting room, to regulate the traffic to the origin,
i think this is the kind of things to try to achieve ?
Best Regards,
Damien
tranxene50 writes:
> Hello!
>
> Many thanks for your answers! :-)
>
> @Dridi:
>
> You are right, writing a specific VMOD would be the ideal solution but unfortunately I am not qualified for the job. ^^
>
> By the way, I would like to thank all the people who are working hard to enhance and maintain Varnish.
>
> This software is absolutely awesome!
>
> @Xavier:
>
> Before considering HAProxy, I searched if quick and dirty hacks were possible with iptables to limit simultaneous connexions and tc to shape the traffic.
>
> But, after a quick reading of the documentation of HAProxy, it became clear that - as you said - it is a reliable solution.
>
> So, thanks the for the hint!
>
> Have a great day!
>
> Le 16/06/2020 à 00:17, Xavier Leune a écrit :
>
> Hello,
>
> @tranxene50 if implementing a vmod can be very challenging, using haproxy can be a great solution here. Please refer to this blog post:
> https://www.haproxy.com/fr/blog/four-examples-of-haproxy-rate-limiting/ (or in french ;) https://www.haproxy.com/fr/blog/four-examples-of-haproxy-rate-limiting/ ). The very first step is about setting a
> maximum connections number and a queuing. Using haproxy as your backend would require low engineering and a minimum overage.
>
> Regards,
>
> Le lun. 15 juin 2020 à 20:02, Dridi Boukelmoune <dridi at varni.sh> a écrit :
>
> Bonsoir,
>
> Unfortunately we don't have any sort of queuing on the backend side,
> so besides implementing your own backend transport from scratch in a
> VMOD there is currently no solution.
>
> Cordialement,
> Dridi
>
> On Sun, Jun 14, 2020 at 2:32 AM tranxene50
> <tranxene50 at openvz-diff-backups.fr> wrote:
> >
> > Hello!
> >
> > Please forgive my bad English, I live in France.
> >
> > Summary: how to cache - with Varnish - Open Street Map PNG images without overloading OSM tiles servers?
> >
> > The question seems related to Varnish backends and ".max_connections" parameter.
> >
> > A far as I know, if ".max_connections" is reached for a backend, Varnish sends 503 http errors.
> >
> > I understand the logic but would it be possible to queue these incoming requests and wait until the selected backend is really available?
> >
> > backend a_tile {
> > .host = "a.tile.openstreetmap.org";
> > .port = "80";
> > .max_connections = 2;
> > }
> >
> > If Varnish have, let's say 100 incoming requests in 1 second, how can I handle this "spike" without overloading the backend?
> >
> > All my google searches were "dead ends" so I think the question is poorly formulated.
> >
> > Note 1 : using [random|round_robin] directors could be a temporary solution
> > Note 2 : libvmod-dynamic is great but does not limit backend simultaneous connexions
> >
> > Many thanks for your help!
>
>
> ----------------------------------------------------------------------
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Damien WETZEL (ATANAR TECHNOLOGIES) ("`-/")_.-'"``-._
http://www.atanar.com . . `; -._ )-;-,_`)
(v_,)' _ )`-.\ ``-'
Phone:+33 9 67 35 09 05 _.- _..-_/ / ((.'
- So much to do, so little time - ((,.-' ((,/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
More information about the varnish-misc
mailing list