Jump to ratings and reviews

Fault-Tolerant Message-Passing Distributed Systems: An Algorithmic Approach

This book presents the most important fault-tolerant distributed programming abstractions and their associated distributed algorithms, in particular in terms of reliable communication and agreement, which lie at the heart of nearly all distributed applications. These programming abstractions, distributed objects or services, allow software designers and programmers to cope with asynchrony and the most important types of failures such as process crashes, message losses, and malicious behaviors of computing entities, widely known under the term "Byzantine fault-tolerance". The author introduces these notions in an incremental manner, starting from a clear specification, followed by algorithms which are first described intuitively and then proved correct. The book also presents impossibility results in classic distributed computing models, along with strategies, mainly failure detectors and randomization, that allow us to enrich these models. In this sense, the book constitutes an introduction to the science of distributed computing, with applications in all domains of distributed systems, such as cloud computing and blockchains. Each chapter comes with exercises and bibliographic notes to help the reader approach, understand, and master the fascinating field of fault-tolerant distributed computing.

459 pages, Paperback

Published December 28, 2018

Loading...
Loading...

About the author

Michel Raynal

20 books3 followers

Ratings & Reviews

What do you think?

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
2 (40%)
4 stars
2 (40%)
3 stars
1 (20%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 1 of 1 review
4 reviews
September 26, 2025
It's an excellent book, with some caveats. First, the letters are very small, the glue smell is terrible and there are lots of miss-spellings. Second, the author put much emphasis on his own discoveries and what interests him in distributed computing, so you will get a lot of results at the intersection of complexity theory, like equivalence of SCD-broadcast and atomic snapshot.

The treatment is mostly theoretical, with a lot of impossibility/optimality proofs, but still more practical than Lynch's, for example he explains Paxos (although he dubs it a "Paxos inspired protocol", because who understands Paxos) and commitment protocols, and how those are used in a database implementations, although you won't see details such as protocols for adding/removing nodes.
Displaying 1 - 1 of 1 review