Giter Club home page Giter Club logo

distributed_systems_notes's Introduction

Distributed Systems Notes

Currently a work in progress!!

This is my personal collection of links and notes taken while trying to learn about distributed systems.

The structure of these notes is a various mix of paraphrasing/outlines/copying from the resources listed below, depending on what I felt helped me learn the material the best.

In each folder you'll find the PDF notes, a README giving an outline of the included topics, and individual JPG images for each page.

Table of Contents


Resources

Textbooks

Courses

Academic Papers Hubs

Other Resources

Tutorials

Introductory Articles


Storage, Networking, and Concurrency

Encoding

B-Trees

Networking

I/O Handling
K8s Networking

Communication Protocols

Multicast
Gossip Protocols
Gossip Usage

Concurrency

Synchrony vs. Asynchrony
Scala Futures/Promises
Akka Library

Distributed Systems

Design

Coordination

Synchronization
Clock and Logical Ordering
Leader Election
Cluster Membership

Replication

Consensus

Raft
Paxos

Consistency

Serializability and Transactional Consistency
Linearizability and Replica Consistency

Distributed Storage

File Systems
Relational
Hash Tables
Dynamo-style (NoSQL)
Caches

Microservices

Design
Event Sourcing

distributed_systems_notes's People

Contributors

qwe1rty avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.