Distributed Systems Design by Example

A sequel to Software Design by Example.

Learner Persona

FIXME

Syllabus

  1. Introduction: what this training does and doesn't cover.
  2. Discrete Event Simulator: to understand the tools we're going to use.
  3. Task Manager: workflow as code.
  4. Open Authentication: trust and identity.
  5. The RAFT Consensus Protocol: theory becomes practice.
  6. A Web Application Framework: with routers.
  7. TCP: moving messages reliably.
  8. A Fuzz Tester: to stress our code.
  9. Conclusion: looking back and next steps.

Appendices

  1. License
  2. Code of Conduct
  3. Contributing
  4. Bibliography
  5. Glossary

Acknowledgments

start where you are · use what you have · help who you can