Distributed Systems Notes – Dr. Martin Kleppmann [pdf]
cl.cam.ac.uk