Hacker News new | past | comments | ask | show | jobs | submit login
Implementing Raft, Part 3: Persistence and Optimizations (thegreenplace.net)
102 points by ingve on March 5, 2020 | hide | past | favorite | 12 comments





[flagged]


As a programming language enthusiast, I often wish the type of comments and chain discussions (no matter how off topic from TFA) would happen more. But yours is not the first negative view of these types of discussions, so I’ll just quietly wait until it happens and then be happy about it, while not begrudging you your flame bait free threads.


So, as a Rust Dev by night, golang Dev by day, I'm super happy with his decision.

For all it's faults, golang is a great language for explaining more advanced networking concepts.

I think Rust might be a better language to write a complete version with all the hairiness of the real world baked in, but golang's simplicity makes it a much better language for example code, IMO.


This guy works at Google, a company that uses Raft heavily as well as Golang. So it makes sense I guess.


> a company that uses Raft heavily

Uh, citation? Only software I'm aware that uses this is Kubernetes maybe.


IIRCC most of the consensus algorithms used at Google are based on Paxos, which makes sense as Raft paper only came out in 2014 and maybe an extra few years to really eck out a solid implementation (etcd).


There are lots of systems inside Google that require consensus. Sorry, I don't have anything to cite, I just know they use it a lot because a lot of my friends, and all of my roommates, work there and we talk about stuff like this.


Interesting, they use Raft now? There's a Google paper from 2006 about Chubby, which is a Paxos-based distributed coarse-grained lock service [1]. It eventually inspired Zookeeper. I'd be curious about what changed to cause a shift to using Raft.

[1] https://research.google.com/archive/chubby-osdi06.pdf


Google was using Paxos around 10 years before Raft was invented. See the Chubby paper.

There were were a bunch of papers like Paxos Revisited that complained about hard Paxos is to understand and implement, which inspired Raft.


Sure, many problems at Google require solving consensus but almost all of them use Paxos[1]

[1] https://research.google/pubs/pub33002/


Spanner uses paxos as well.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: