Learn how to build systems that are efficient, reliable and scalable.
Get the bookThe book starts with an analysis of fundamental concepts, such as consistency models, isolation levels, transactional guarantees, the relativity of time and others distilled from hundreds of academic papers.
Building on this foundation, it then covers how theory can be used to build distributed systems in practice. It covers widely used systems, such as Kafka, Kubernetes, Cassandra, Zookeeper and many others.
What are the basic concepts in distributed systems and how to leverage fundamental techniques, such as replication & partitioning.
How to reason about concurrency and partial failures and how to leverage transactional systems to build your applications more safely.
What is the problem solved by consensus protocols, how they work and how you can use them to ensure your system can survive failures.
What are the basic primitives used to connect systems with each other and to secure data transferred between them.
How popular distributed systems are built using all the presented theory and how you should use those systems from your application.
What are the basic building blocks you can use to architect distributed systems yourself.
Available in PDF, ePub & Mobi format so that you can enjoy it in your favourite device.
Dimos is a Software Engineer who has been designing, building and operating large-scale, distributed systems over the last decade. This book contains a distilled version of all the knowledge and experience he has acquired during this time.