Patterns of Distributed Systems • Unmesh Joshi & James Lewis • GOTO 2024
Cool. interview Unmesh JoshiHe is the author of Patterns of Distributed Systems. Transcript available here. Communication consists of the following points - Unraveling the Foundations: A Patterns-Based Exploration The author talks about his career as an engineer and how he came to life to write a book about patterns of distributed systems. I especially liked how Unmesh Learn about real distributed systems (Akka, Kafka, Cassandra, ...)In which the author found practical implementations of those concepts that are usually described in whitepapers. For example, in the interview discussed Lamport clock and whitepapers Barbara Liskow (Its principle is responsible for the letter L in the acronym SO.LID). In general, I would like to dig into real technologies and try to compare how theoretical concepts are implemented in practice in different systems and what trade-offs are the authors of these systems. - Should Every Software Developer Should Understand Distributed Systems? So the answer is yes.) But the perspective depends on the context. Conditional microservices are also a distributed system. But the author’s focus was on data and maintaining its consistency on many servers, and he focused on the operation of ala systems Kafka, Cassandra, Amazon S3, Cosmos DB. - Comparing Patterns: Raft and Paxos Here the guys are discussing consensus models - they're talking about
- Paxos, proposed by the already mentioned Lamport
- Raft, co-authored by John Osterhuth, whose bookA Philosophy of Software DesignI've already said in posts: 1 and 2 Here the authors recall the CAP theorem (I mean, told)I don’t think it’s a PACELC extension. (I mean, told)Jepsen recalls its testing of database manufacturers’ warranties and checking their compliance with consistency models. (About them, too. told). In the discussion, they talk about the time and recall the TrueTime from Google and hybrid watches in MongoDB, YugabyteDB and CockroachDB. - Why Are Patterns Useful? The benefits of patterns are best described in the words of the author.
One of the goals for these patterns work as well is that someone reading this material should be able to navigate open-source code bases. And I think navigating, I mean, following open-source products and going through their code bases, trying out, maybe isolating some pieces of it and playing with it, I think that's a great way to learn about distribution. I mean, particularly topics like distributed systems, it's a great way to learn because if you go down the route of theoretical understanding, I mean, there are a lot of nice books, I would say, but you might get lost. So I think it helps a lot to remain closer to code while you are learning stuff. - Conclusion Finally, the guys sum up the results and James tries to figure out the creative plans of the Unmesh, which plans to continue working on the patterns, as well as start workshops on these topics. I think I would have signed up for such a workshop:) I will definitely read this book, the author sold it to me in this interview.
#Software #Architecture #DistributedSystems #SystemDesign #Patterns #Engineering