I picked up this book since I keep coming across terminology related to distributed systems and wanted a simple intro before I eventually read DDIA。Most of the explanations are clear and there are a lot of diagrams and external links。 A few topics could be confusing and might require searching around a bit for other resources though。The book is pretty simple though and won't really benefit anyone if they've been working for a few years since they would be exposed to almost all the topics in the I picked up this book since I keep coming across terminology related to distributed systems and wanted a simple intro before I eventually read DDIA。Most of the explanations are clear and there are a lot of diagrams and external links。 A few topics could be confusing and might require searching around a bit for other resources though。The book is pretty simple though and won't really benefit anyone if they've been working for a few years since they would be exposed to almost all the topics in the book。 。。。more
Mukul,
This book is just trying to do too much。 It's trying to balance between the tech heavy concepts from DDIA and also trying to explain concepts in a palatable way。 But this is the biggest drawback of the book。 For example System Design Interview by Alex Xu is a fantastic book which covers the system design aspects and also explains the fundamentals of distributed systems。 And it links to various resources or white-papers if someone is interested in delving deeper into a specific topic。 That being This book is just trying to do too much。 It's trying to balance between the tech heavy concepts from DDIA and also trying to explain concepts in a palatable way。 But this is the biggest drawback of the book。 For example System Design Interview by Alex Xu is a fantastic book which covers the system design aspects and also explains the fundamentals of distributed systems。 And it links to various resources or white-papers if someone is interested in delving deeper into a specific topic。 That being said, understanding distributed system is just a hodgepodge of concepts some explained in too much depth and covering some other concepts barely on the surface。 I clearly don't think this is a good book for Understanding distributed systems but that's just my humble opinion。 。。。more
Denis Romanovsky,
A kind of overview book with not too much details。 A good way to systemize knowledge on distributed systems。 Do not expect depth here。
Roman Fursov,
Good overview of the systems behind large applications。 The book is not deep, but it never meant to be。
Andy Davies,
This is the book I had wished that "Designing data-intensive applications" was。 A higher level more easily accessible view on the concepts surrounding distributed systems。Well worth a read if you work anywhere near micro service based architecture。 This is the book I had wished that "Designing data-intensive applications" was。 A higher level more easily accessible view on the concepts surrounding distributed systems。Well worth a read if you work anywhere near micro service based architecture。 。。。more
Oleg Shimchik,
An excellent book that gives a quick overview of the landscape of large distributed systems design。 It doesn't go into too much depth but rather gives you a good starting point to dig deeper while still giving a solid foundation。 There is some overlap with "Designing Data-Intensive Applications" but it feels like this books is way more focused and follows the 80/20 rule。 I still recommend reading DDIA but this book might give you a quick refresher or serve as a solid alternative if you are prepa An excellent book that gives a quick overview of the landscape of large distributed systems design。 It doesn't go into too much depth but rather gives you a good starting point to dig deeper while still giving a solid foundation。 There is some overlap with "Designing Data-Intensive Applications" but it feels like this books is way more focused and follows the 80/20 rule。 I still recommend reading DDIA but this book might give you a quick refresher or serve as a solid alternative if you are preparing for a System Design interview and don't have a lot of time on your hands。 。。。more
Sarah,
Honestly this was the first book I’ve seen that took an approachable overview of distributed systems & made it interesting。 Some of the concepts were a bit hard to grasp, but I’m sure that re-reading a few chapters will do me good。 Overall I learned a LOT from this book and I think it’s one that I will go back to many times for reference。
Mustafa,
The book tries to cover a lot of topics in a few pages, so the result is shallow information in all the topics no deep-dive details on any of them, also I felt lost while reading this book, it's poorly organized tbh。 The book tries to cover a lot of topics in a few pages, so the result is shallow information in all the topics no deep-dive details on any of them, also I felt lost while reading this book, it's poorly organized tbh。 。。。more
Mikhail Filatov,
This book is trying to cover too much - from the whole content of "DDIA" to microservices/DevOps。 So, in result, all topics are covered very cursory。There are some interesting parts, specifically about scaling and resiliency。 This book is trying to cover too much - from the whole content of "DDIA" to microservices/DevOps。 So, in result, all topics are covered very cursory。There are some interesting parts, specifically about scaling and resiliency。 。。。more
Dmitriy Rozhkov,
Good Overview。 The cover is exactly what's in the book。 It's not deep, but that is the amount any web engineer should know about。 I would suggest reading it to all junior to mid level professionals。 Minus one star for the paper adaptation。 Some colors became black and white, dangling curly braces here and there, the text stating the device I'm reading on has a battery (paper book)。 Good Overview。 The cover is exactly what's in the book。 It's not deep, but that is the amount any web engineer should know about。 I would suggest reading it to all junior to mid level professionals。 Minus one star for the paper adaptation。 Some colors became black and white, dangling curly braces here and there, the text stating the device I'm reading on has a battery (paper book)。 。。。more
Bill,
As someone who is new to distributed systems, this book was the perfect introduction that filled in all the gaps of my understanding and led me to "Designing Data Intensive Applications"。 Highly recommend to anyone getting into distributed systems。 As someone who is new to distributed systems, this book was the perfect introduction that filled in all the gaps of my understanding and led me to "Designing Data Intensive Applications"。 Highly recommend to anyone getting into distributed systems。 。。。more
Marco Neves,
I have mixed feelings about this book。 On one hand it is an amazing collection of basic knowledge that are really important for developers working in and with distributed systems, it doesn't go into how each of the topics is intertwined with the other topics and how to get them together to build scalable, resilient, distributed systems。 I have mixed feelings about this book。 On one hand it is an amazing collection of basic knowledge that are really important for developers working in and with distributed systems, it doesn't go into how each of the topics is intertwined with the other topics and how to get them together to build scalable, resilient, distributed systems。 。。。more
Madhur Bhargava,
This book was my introduction to Distributed systems and the author has done an amazing job。 The author covers the distributed system paradigm by starting with the communication, continuing with co-ordination, scalability, resilience and then ending up with testing。 The material is top-notch and personally, I found the foot-notes provided to be very helpful。 However, the material(esp。 towards later chapters) is pretty intense, and if you are just looking for an introductory level book(like I was This book was my introduction to Distributed systems and the author has done an amazing job。 The author covers the distributed system paradigm by starting with the communication, continuing with co-ordination, scalability, resilience and then ending up with testing。 The material is top-notch and personally, I found the foot-notes provided to be very helpful。 However, the material(esp。 towards later chapters) is pretty intense, and if you are just looking for an introductory level book(like I was), then maybe this is best suited as a followup to the introductory material and not the introduction itself。 Also, perhaps, it would have helped if the book had one of the earlier chapters introducing common patterns/jargons in distributed systems(eg - quorum, consensus, consistent hashing etc), however, this more reflects towards the expertise of the reader and less towards the author/book itself。 All the above mentioned topics are still present in the book, however, they appear within their own context。 To sum it up - A must read, and even better if you already have had some basic introduction to the distributed systems。 。。。more
Alexis,
I enjoyed this quite a bit。 A lot of overlap with Designing Data-Intensive Applications in the first half, though without the exhaustingly in-depth coverage that isn't always relevant。 The other half focuses on non-data specific details that were wonderful (though the foray into into TLA+ and PlusCalc left me a bit puzzled as a choice to include。) Overall, though, it's educational, easy to understand and pretty short。I would definitely reach for this book as something to hand a Jr。 dev that join I enjoyed this quite a bit。 A lot of overlap with Designing Data-Intensive Applications in the first half, though without the exhaustingly in-depth coverage that isn't always relevant。 The other half focuses on non-data specific details that were wonderful (though the foray into into TLA+ and PlusCalc left me a bit puzzled as a choice to include。) Overall, though, it's educational, easy to understand and pretty short。I would definitely reach for this book as something to hand a Jr。 dev that joins my team and needs to learn some concepts for working in a distributed world that they don't always focus on in school。 Someone who knows how to code and the basics of a database, but doesn't know the work and considerations of making it maintainable and scalable。 。。。more
Maki,
Great writing style, easy to follow and thorough。 I really appreciated this book and am glad to recommend it to others。
Wanasit,
A lot of overlap with "Designing Data-Intensive Applications", but shorter more focused on the theoretical and fundamental part。 A lot of overlap with "Designing Data-Intensive Applications", but shorter more focused on the theoretical and fundamental part。 。。。more
Ernestas Poskus,
I wish I had this years ago, book covers partitioning (hash and range), sharding, functional decomposition, down-steam resiliency (rate limiting, load shedding), SPOF's design, load balancing based on CAP + CALM, consistency/replication, distributed locks, time (vector clocks, Lamport timestamps), on-call (SLA, error budgets, burn rate), observability and other good stuff。 I wish I had this years ago, book covers partitioning (hash and range), sharding, functional decomposition, down-steam resiliency (rate limiting, load shedding), SPOF's design, load balancing based on CAP + CALM, consistency/replication, distributed locks, time (vector clocks, Lamport timestamps), on-call (SLA, error budgets, burn rate), observability and other good stuff。 。。。more
Pati Nati,
The author does a great job with an excellent explanation about distributed systems。
Nadia Zhuk,
An awesome book about distributed systems, intense yet easy to follow。 If you found "Designing Data-Intensive Applications" too overwhelming, you might want to try this book instead。 An awesome book about distributed systems, intense yet easy to follow。 If you found "Designing Data-Intensive Applications" too overwhelming, you might want to try this book instead。 。。。more
Omar Khatib,
I really like the book , I am both new to read books , and to the subject。 It does what the title says Understanding , this book aim is not to make me a pro , it's to make me make the first step。 I really enjoy reading the book! I really like the book , I am both new to read books , and to the subject。 It does what the title says Understanding , this book aim is not to make me a pro , it's to make me make the first step。 I really enjoy reading the book! 。。。more
Stefania,
As a data scientist with a background in Physics, the word distributed systems sounded odd to me。 But I knew that it could help me understand how AWS services I use in my day-to-day work under the hood。 So I decided to read the book even without a comp-sci background, and I don't regret it。 The book walks you through different major steps needed to build distributed systems from first principles in a simple and understandable way。 Lots of pictures and references are provided to explain the topic As a data scientist with a background in Physics, the word distributed systems sounded odd to me。 But I knew that it could help me understand how AWS services I use in my day-to-day work under the hood。 So I decided to read the book even without a comp-sci background, and I don't regret it。 The book walks you through different major steps needed to build distributed systems from first principles in a simple and understandable way。 Lots of pictures and references are provided to explain the topic, which I found really valuable。 After reading the book, I have a much better understanding of how large scale databases are implemented and what their tradeoffs are。 。。。more