Hacker News new | ask | show | jobs
by overflow_error 2134 days ago
How is this supposed to work? (I use Arch BTW) supposed I'm in a country X, does Cloudflare basically caching the request to server that are in country X? But I'm already close to that server and I'm always cautious with mirrors that are in country X, often they were out of date :(
3 comments

This is my issue with it as well - it's basically their geo-sniffing magic routing you towards the closest officially listed mirrors for that country (glorified proxy); it makes the mistake of presuming that all those mirrors listed in the Arch country-mirrorlist are created equal in terms of reliability and performance, but they're not (we have a whole web page just to track out of date mirrors).
I'd guess if this gains traction, the caching on Cloudflare's side will usually make up for this, and if it hits the actual mirror behind it, the load on that one should be lower than before. It reads like they will try to proxy multiple local mirrors so time will tell how well they will pick amongst them. I'm switching for now to see how it will perform over a longer period.
The difficulty is if the mirror itself is behind, Cloudflare's cache for that specific endpoint will be correct (functional, working) but out of date compared to another mirror.

Example: around the end of June this year the mirrors.kernel.org infra was failing to sync (DNS issues of some sort) the latest content, so your upgrade would appear to have no new packages because the stale content was a valid repo, when in fact there were many updates and other mirrors were in sync.

Right that makes sense, so Cloudflare would actually have to make the caching context-aware, not just classic HTTP proxying.
I'm not aware of the technical how, but the Arch infrastructure seems to measure this successfully; a hook into this data might be a great way for the two to interoperate (so that Cloudflare always serves the freshest cache/mirrors). https://www.archlinux.org/mirrors/status/
The relevant code can be found here I believe: https://github.com/archlinux/archweb/blob/master/mirrors/man...
"geo-sniffing magic routing", Also known as BGP + CloudFlare Argo (https://www.cloudflare.com/learning/performance/routing-vs-s...)
Yeah Arch mirrors in particular seem all over the place on quality. In true Arch spirit you def want to configure that yourself
> How is this supposed to work? (I use Arch BTW) supposed I'm in a country X, does Cloudflare basically caching the request to server that are in country X? But I'm already close to that server and I'm always cautious with mirrors that are in country X, often they were out of date :(

According to what I read in their main page https://cloudflaremirrors.com/archlinux, they seem to be caching the packages from mirrors and serving it via their anycast network.

Repeatedly poke the maintainers of the mirror and the core developers alternately until everyone gets mad and does something about it. :P

Alternatively (/ realistically), perhaps CF would prefer the value-add of rerouting where there are newer packages instead of the singular approach of geo-routing. Definitely let them know.

I'm seeing multiple comments in this subthread, I'd apply the 2nd line above to everyone affected, if a bunch of people let CF know maybe they'll figure something out.