aphyr/distsys-class

Public

Class materials for a distributed systems lecture series

  • Stars10.3k+396 tuần này
  • Forks746
  • Watchers399
  • Issues0
  • Ngày tạo02/04/2016
  • Cập nhật gần nhất18/03/2025
  • Ngôn ngữ—
  • Giấy phép—
README.markdown120.1 KBRaw

An Introduction to Distributed Systems

Copyright Kyle Kingsbury & Jepsen, LLC.

This outline accompanies a 16 to 32 hour overview class on distributed systems fundamentals. The course aims to introduce software engineers to the practical basics of distributed systems, through lecture and discussion, and optional labwork. Participants will gain an intuitive understanding of key distributed systems terms, an overview of the algorithmic landscape, and explore production concerns.

Intro

  • My name is Kyle Kingsbury
  • I've worked on distributed systems from several perspectives
    • 2003--2009: sysadmin, network operations, web developer
    • 2009--2014: backend engineer, database wrangler at various web startups
    • 2014--now: distributed systems safety testing (Jepsen)
  • This class is aimed at practitioners
    • "Things I Wish I Would Have Known"
    • Backend engineers
    • Frontend engineers
    • Ops folks
    • Product managers
  • This class aims to prepare you to write, operate, and use distributed systems
    • First half: theoretical framework
      • A map of how concepts fit together
        • Not about memorizing everything; it's about knowing where to look
      • Establish a shared language
        • To talk with your peers
        • To read a paper
        • To evaluate a system's claims
      • Understand fundamental principles
        • Time, ordering, nodes, networks, faults, liveness, safety
      • Classes of algorithms
        • What they can and can't do, when to apply each
    • Second half: practical concerns
      • A grab bag of design patterns
        • Illustrative anecdotes
        • Computers were, in fact, a mistake
        • What isn't in the papers?
      • Finally, production concerns
        • Deployment, debugging, monitoring
  • Class logistics
    • This class is what you make of it
      • We can go as deep as you want, or skip over familiar ground
      • Jump in with questions, challenges, ideas at any time
    • We'll take ~10-minute breaks every hour or so, plus lunch
    • If you need to duck out for whatever reason, that's fine!
      • Outages, kids, pets, whatever

Nội dung README thuộc về aphyr và cộng đồng đóng góp, giấy phép Không có giấy phép. Nguồn: github.com/aphyr/distsys-class