1
0
Fork 0
mirror of https://github.com/theanalyst/awesome-distributed-systems.git synced 2024-11-20 11:08:09 -05:00
distributed-systems/README.md

43 lines
3.4 KiB
Markdown
Raw Normal View History

2015-02-26 14:22:52 -05:00
# awesome-distributed-systems
2015-02-26 14:54:12 -05:00
A (hopefully) curated list on awesome material on distributed systems, inspired by
other awesome frameworks like [awesome-python](https://github.com/vinta/awesome-python).
Most links will tend to be readings on architecture itself rather than code itself.
## Bootcamp
Read things here before you start.
2015-02-26 15:44:42 -05:00
- [CAP Theorem](http://en.wikipedia.org/wiki/CAP_theorem), Also [plain english](http://ksat.me/a-plain-english-introduction-to-cap-theorem/) explanation
- [Fallacies of Distributed Computing](http://en.wikipedia.org/wiki/Fallacies_of_distributed_computing) YES!! EXPECT EVERYTHING TO BREAK!!!
2015-02-26 14:54:12 -05:00
## Books
- [Distributed Systems for fun and profit](http://book.mixu.net/distsys/single-page.html) [Free]
- [Distributed Systems Principles and Paradigms, Andrew Tanenbaum](http://www.amazon.com/Distributed-Systems-Principles-Paradigms-2nd/dp/0132392275) [Amazon Link]
2015-02-26 14:54:54 -05:00
- [Scalable Web Architecture and Distributed Systems](http://www.aosabook.org/en/distsys.html) [Free]
2015-02-26 15:11:51 -05:00
## Papers
2015-02-26 15:20:20 -05:00
Must read papers on distributed systems. While nearly *all* of Lamport's work should feature here, just adding a few that *must* be read.
2015-02-26 15:11:51 -05:00
- [Times, Clocks and Ordering of Events in Distributed Systems](http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf) Lamport's paper, the Quintessential distributed systems primer
2015-02-26 15:18:11 -05:00
- [The Part Time Parliament](http://research.microsoft.com/en-us/um/people/lamport/pubs/lamport-paxos.pdf) Paxos
2015-02-26 15:11:51 -05:00
2015-02-26 15:25:34 -05:00
### Storage & Databases
2015-02-26 15:11:51 -05:00
- [Dynamo: Amazon's Highly Available Key Value Store](http://bnrg.eecs.berkeley.edu/~randy/Courses/CS294.F07/Dynamo.pdf)
- [Bigtable: A Distributed Storage System for Structured Data](http://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdf)
2015-02-26 15:49:37 -05:00
- [The Google File System](http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/gfs-sosp2003.pdf)
2015-02-26 15:25:34 -05:00
- [Cassandra: A Decentralized Structured Storage System](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.161.6751&rep=rep1&type=pdf) Inspired heavily by Dynamo
- [CRUSH: Controlled, Scalable, Decentralized Placement of Replicated Data](http://www.ssrc.ucsc.edu/Papers/weil-sc06.pdf), Basis of Ceph distributed storage system
2015-02-26 15:18:11 -05:00
2015-02-26 16:36:29 -05:00
### Distributed Consensus
- [The Chubby Lock Service for loosely coupled distributed systems](http://static.googleusercontent.com/media/research.google.com/en//archive/chubby-osdi06.pdf) Inspiration behind other Service Discovery & Coordination ZK, etcd, Consul etc.
- [Paxos made live - An engineering perspective](http://research.google.com/archive/paxos_made_live.html) Google's learning while implementing systems atop of Paxos
- [Raft Consensus Algorithm](https://raftconsensus.github.io/) Do checkout an [interesting visualization of raft](http://thesecretlivesofdata.com/raft/)
2015-02-26 15:29:57 -05:00
2015-02-26 15:58:02 -05:00
## Courses
- [Cloud Computing Concepts](https://class.coursera.org/cloudcomputing-001), University of Illinois
- [CMU: Distributed Systems](http://www.cs.cmu.edu/~dga/15-440/F12/syllabus.html) in Go Programming Language
- [Software Defined Networking](https://www.coursera.org/course/sdn) , Georgia Tech.
2015-02-26 15:18:11 -05:00
## Blogs and other reading links
- [The C10K problem](http://www.kegel.com/c10k.html)
- [On Designing and Deploying Internet-Scale Services](http://static.usenix.org/event/lisa07/tech/full_papers/hamilton/hamilton_html/)
2015-02-26 16:18:57 -05:00
- [Notes on Distributed Systems for Young Bloods](http://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/)