├── courses └── README.md ├── README.md ├── books └── README.md ├── videos └── README.md ├── oss-projects └── README.md ├── blogs └── README.md └── papers └── README.md /courses/README.md: -------------------------------------------------------------------------------- 1 | ## Courses 2 | 3 | - [Seif Haridi](https://www.youtube.com/playlist?list=PL700757A5D4B3F368) 4 | - [CS 436, University of Waterloo](https://www.youtube.com/playlist?list=PLawkBQ15NDEkDJ5IyLIJUTZ1rRM9YQq6N) 5 | 6 | - [MIT 6.824 Distributed Systems](https://pdos.csail.mit.edu/6.824/) 7 | - [CMU 15-440/15-640 Distributed Systems](https://www.youtube.com/playlist?list=PLqq-6Pq4lTTZSKAFG6aCDVDP86NCGUSqY) 8 | - [Stanford CS244B Distributed Systems](https://www.youtube.com/playlist?list=PLoCMsyE1cvdWivHWygGURDXsjGkAVbnPO) 9 | - [University of Washington CSE 452](https://www.youtube.com/playlist?list=PL7BY5epwGYo1Bcf-_YysouR_W0ynqbzWS) 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome Distributed Systems 2 | 3 | Awesome list of distributed system resources(blogs, courses, videos), papers and open source projects 4 | 5 | ## Table of Contents 6 | 7 | - [Blogs](https://github.com/rshetty/awesome-distributed-systems/tree/master/blogs) 8 | - [Books](https://github.com/rshetty/awesome-distributed-systems/tree/master/books) 9 | - [OpenSource](https://github.com/rshetty/awesome-distributed-systems/tree/master/oss-projects) 10 | - [Papers](https://github.com/rshetty/awesome-distributed-systems/tree/master/papers) 11 | - [Videos](https://github.com/rshetty/awesome-distributed-systems/tree/master/videos) 12 | - [Courses](https://github.com/rshetty/awesome-distributed-systems/tree/master/courses) 13 | -------------------------------------------------------------------------------- /books/README.md: -------------------------------------------------------------------------------- 1 | ## Books 2 | 3 | - [Designing data intensive applications](https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321) 4 | - [Distributed Systems 3rd](https://www.distributed-systems.net/index.php/books/distributed-systems-3rd-edition-2017/) 5 | - [Introduction to reliable and secure distributed programming](https://www.amazon.com/Introduction-Reliable-Secure-Distributed-Programming/dp/3642152597/) 6 | 7 | - [Distributed Systems for Fun and Profit](https://book.mixu.net/distsys/) 8 | - [Designing Distributed Systems](https://azure.microsoft.com/en-us/resources/designing-distributed-systems/) 9 | - [Reliable Distributed Systems](https://www.amazon.com/Reliable-Distributed-Systems-Technology-Applications/dp/0387954011) 10 | -------------------------------------------------------------------------------- /videos/README.md: -------------------------------------------------------------------------------- 1 | ## Videos 2 | 3 | - [Chubby Lock service](https://www.youtube.com/watch?v=kX9Z0F-eTt4&t=30s) 4 | - [Distributed Systems in One Lesson by Tim Berglund](https://www.youtube.com/watch?v=Y6Ev8GIlbxc) 5 | - [Four distributed systems architectural patterns](https://www.youtube.com/watch?v=tpspO9K28PM) 6 | - [Verification of distributed system](https://www.youtube.com/watch?v=kDh5BrqiGhI) 7 | - [Raft consensus algorithm by Diego Ongaro](https://www.youtube.com/watch?v=YbZ3zDzDnrw) 8 | - [Designing Data-Intensive Applications talk](https://www.youtube.com/watch?v=JKrTLcZr9vw) 9 | - [Paxos Made Simple by Leslie Lamport](https://www.youtube.com/watch?v=JEpsBg0AO6o) 10 | - [Google Spanner - Data Consistency at Scale](https://www.youtube.com/watch?v=TMowSExz1dQ) 11 | - [Cassandra at Netflix: Lessons Learned](https://www.youtube.com/watch?v=79D2s1THV8U) 12 | -------------------------------------------------------------------------------- /oss-projects/README.md: -------------------------------------------------------------------------------- 1 | ## OpenSource 2 | 3 | - [cockroachdb](https://github.com/cockroachdb/cockroach) 4 | - [Consul](https://github.com/hashicorp/consul) 5 | - [etcd](https://github.com/coreos/etcd) 6 | - [HBase](https://github.com/apache/hbase) 7 | - [IPFS - the Distributed Web](https://github.com/ipfs/ipfs) 8 | - [kubernetes](https://github.com/kubernetes/kubernetes) 9 | - [RethinkDB](https://github.com/rethinkdb/rethinkdb) 10 | - [Apache Kafka](https://github.com/apache/kafka) 11 | - [Apache Cassandra](https://github.com/apache/cassandra) 12 | - [Apache Spark](https://github.com/apache/spark) 13 | - [Apache Flink](https://github.com/apache/flink) 14 | - [Apache Zookeeper](https://github.com/apache/zookeeper) 15 | - [NATS](https://github.com/nats-io/nats-server) 16 | - [Aerospike](https://github.com/aerospike/aerospike-server) 17 | - [TiKV](https://github.com/tikv/tikv) 18 | - [Dgraph](https://github.com/dgraph-io/dgraph) 19 | -------------------------------------------------------------------------------- /blogs/README.md: -------------------------------------------------------------------------------- 1 | ## Blogs 2 | 3 | - [All Things Distributed](https://www.allthingsdistributed.com/) 4 | - [A Brief tour of FLP Impossbility](http://www.the-paper-trail.org/post/2008-08-13-a-brief-tour-of-flp-impossibility/) 5 | - [Base Distributed Systems](https://medium.com/baseds) 6 | - [Chubby Lock service](https://blog.acolyer.org/2015/02/13/the-chubby-lock-service-for-loosely-coupled-distributed-systems/) 7 | - [Consensus Protocols: Two-Phase Commit](http://www.the-paper-trail.org/post/2008-11-27-consensus-protocols-two-phase-commit/) 8 | - [Consistency vs availability](https://www.infoq.com/news/2008/01/consistency-vs-availability) 9 | - [Consitent hashing: Algorithmic Tradeoffs](https://medium.com/@dgryski/consistent-hashing-algorithmic-tradeoffs-ef6b8e2fcae8) 10 | - [Distributed systems theory](http://the-paper-trail.org/blog/distributed-systems-theory-for-the-distributed-systems-engineer/) 11 | - [Distributed systems and the end of the api](https://writings.quilt.org/2014/05/12/distributed-systems-and-the-end-of-the-api/) 12 | - [Fallacies of distributed computing](https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing) 13 | - [Notes on Distributed Systems for young bloods](http://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/) 14 | - [Round Robin in Distributed Systems](https://engineering.grab.com/round-robin-in-distributed-systems) 15 | - [Readings in Distributed Systems](http://christophermeiklejohn.com/distributed/systems/2013/07/12/readings-in-distributed-systems.html) 16 | - [Why distributed computing](https://www.artima.com/weblogs/viewpost.jsp?thread=4247) 17 | - [High Scalability](https://highscalability.com) 18 | - [The Morning Paper](https://blog.acolyer.org/) 19 | - [Netflix Tech Blog](https://netflixtechblog.com) 20 | - [Aphyr's posts on distributed systems](https://aphyr.com/tags/distributed-systems) 21 | - [Brave New Geek](https://bravenewgeek.com) 22 | - [Copy Construct](https://medium.com/@copyconstruct) 23 | -------------------------------------------------------------------------------- /papers/README.md: -------------------------------------------------------------------------------- 1 | ## Papers 2 | 3 | - [A Note on Distributed Computing](https://www.cc.gatech.edu/classes/AY2010/cs4210_fall/papers/smli_tr-94-29.pdf) 4 | - [BigTable - Distributed storage system](https://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdf) 5 | - [Borg](https://pdos.csail.mit.edu/6.824/papers/borg.pdf) 6 | - [Byzantine Generals Problem](http://www.cs.cornell.edu/courses/cs614/2004sp/papers/LSP82.pdf) 7 | - [Cassandra](http://pages.cs.wisc.edu/~akella/CS838/F12/838-CloudPapers/Cassandra.pdf) 8 | - [Chubby lock service](https://static.googleusercontent.com/media/research.google.com/en//archive/chubby-osdi06.pdf) 9 | - [Comparing the use of DynamoDB and HBase for NoSQL](https://d0.awsstatic.com/whitepapers/AWS_Comparing_the_Use_of_DynamoDB_and_HBase_for_NoSQL.pdf) 10 | - [Dapper - Distributed tracing](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36356.pdf) 11 | - [Dynamo - Key value store](http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/decandia07dynamo.pdf) 12 | - [FLP Impossibility Result](https://groups.csail.mit.edu/tds/papers/Lynch/jacm85.pdf) 13 | - [Harvest, yield and Fault tolerant systems](https://pdfs.semanticscholar.org/5015/8bc1a8a67295ab7bce0550886a9859000dc2.pdf) 14 | - [IEEE Software Design 2PC](https://www.enterpriseintegrationpatterns.com/docs/IEEE_Software_Design_2PC.pdf) 15 | - [Increasing the resilience of Distributed and Replicated database systems](http://webee.technion.ac.il/~idish/Abstracts/jcss.html) 16 | - [Lifeguard](https://arxiv.org/pdf/1707.00788.pdf) 17 | - [Paxos Made Simple](https://lamport.azurewebsites.net/pubs/paxos-simple.pdf) 18 | - [Raft](https://raft.github.io/raft.pdf) 19 | - [Spanner - Google's Globally distributed database](https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf) 20 | - [SWIM](http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.18.9737) 21 | - [The Part-Time Parliament](https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf) 22 | - [Time, clocks and the Ordering of events in a Distributed System](https://lamport.azurewebsites.net/pubs/time-clocks.pdf) 23 | - [Zookeeper](https://www.usenix.org/legacy/event/usenix10/tech/full_papers/Hunt.pdf) 24 | - [MapReduce: Simplified Data Processing on Large Clusters](https://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf) 25 | - [The Google File System](https://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf) 26 | - [Megastore: Providing Scalable, Highly Available Storage](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36971.pdf) 27 | - [Kafka: a Distributed Messaging System for Log Processing](http://notes.stephenholiday.com/Kafka.pdf) 28 | - [Spark: Cluster Computing with Working Sets](https://static.usenix.org/event/hotcloud10/tech/full_papers/Zaharia.pdf) 29 | - [Chord: A Scalable Peer-to-Peer Lookup Service](https://pdos.csail.mit.edu/papers/chord:sigcomm01/chord_sigcomm.pdf) 30 | --------------------------------------------------------------------------------