This article is a bit hard for me to grasp the main ideas of because, given Cloudflare's requirements (e.g. no strong leaders), it immediately seems like they should be comparing to leaderless protocols like Paxos-class algorithms. Comparing to Raft and saying it's better because Meerkat is leaderless is confusing, because Raft is an adjustment to Paxos to specifically have strong leaders. So I'm 3/4 the way into the…
It feels like somebody prompted an AI agent at CF "why Meerkat is better than Raft" when drafting this blog post.
Cloudflare Meerkat - Globally distributed consensus
21–30 of 58 posts
Re: Cloudflare Meerkat - Globally distributed consensus
#22This is really interesting. I wonder if etcd can benefit from this as it uses Raft for consensus and split-brain can be a problem depending on how its setup (usually when a Kubernetes control plane is initialized).
Re: Cloudflare Meerkat - Globally distributed consensus
#23TBH I’m doubtful of most people building their own crypto libs and distributed consensus implementations. But maybe cloudflare can pull it off. Good to see them pushing the state of distributed consensus. Take aways: * it’s not in prod yet. I suspect those many round trips are going to get expensive on median aka typical redistributed deployments. Curious to see how it goes once in the wild. * they say it isn’t likel…
Cloudflare did not develop QuePaxa, although I'm sure they did a lot of work to operationalize it. The original protocol is from a SOSP 2023 paper. https://dl.acm.org/doi/10.1145/3600006.3613150
Re: Cloudflare Meerkat - Globally distributed consensus
#24Consensus is one of those areas where the interesting engineering and the number of people who actually need it are inversely correlated. Most "we need distributed coordination" turns out to be "we need one writer and a lock," which a single Postgres hands you for free: advisory locks, SELECT ... FOR UPDATE, SKIP LOCKED for work distribution. Linearizability without running Raft.. The real threshold is multi-region w…
1. This article is about Cloudflare developing for their own internal control plane--I'm fairly certain their requirements preclude a single Postgres
2. Even if you're not Cloudflare, you may not want to be limited by the availability of a single Postgres instance.
Re: Cloudflare Meerkat - Globally distributed consensus
#25Earlier quoted context omitted.
It feels like somebody prompted an AI agent at CF "why Meerkat is better than Raft" when drafting this blog post.
The article lets itself down when it reveals it's had some marketing "polish" added: "where certain resources (like an AI model instance) are stored" They could have picked something far more concrete (for Cloudflare's business and the type of services they deploy) than "AI model" there, which is clearly picked just to make it seem 'current' and on-trend.
Re: Cloudflare Meerkat - Globally distributed consensus
#26Interesting
Re: Cloudflare Meerkat - Globally distributed consensus
#27Re: Cloudflare Meerkat - Globally distributed consensus
#28Re: Cloudflare Meerkat - Globally distributed consensus
#29Earlier quoted context omitted.
> I’m doubtful of most people building their own crypto libs and distributed consensus implementations. But maybe cloudflare can pull it off. Who else than Cloudflare (or similar company in expertise and size) would be a better fit to implement distributed consensus?
There’s a weird yet common attitude that nobody has to implement operating systems, databases, compilers, cryptography, consensus algorithms, etc because you should use off the shelf solutions. This is obviously true, and there are surely more web devs than, say, compiler engineers. But then the logic seems to go as far as to imply nobody does or should be doing these things. Where do they think the “off the shelf” s…
Yeah they kinda suck and make mistakes right now, but tech only gets better.
It’s no different than 3D printing. Instead of cutting and joining a bunch of stock parts, you just print the desired part.
In the same way printing with plastic kinda sucks, the tech will improve. Now you can print in metal or in resin without supports.
The future will be take all the ideas from various off the shelf products but tightly integrate them together for my specific use case
Re: Cloudflare Meerkat - Globally distributed consensus
#301. I'd bet they either already do log-routed config, or simulation testing finds this race before production does.
2. The first part of Meerkat that will need clocks for correctness will probably be stale local reads, not the core consensus protocol.