Foreword
Engineers are often attracted to distributed computing, which promises not only benefits like scalability and fault tolerance but also the prestige of creating clever, talk-worthy computer systems. But the reality is that distributed systems are hard. There are myriads of edge cases, all with subtle interactions and high-dimensional nuance. Every move you make as a systems designer has n-th degree side effects which aren’t obvious. You’re Sideshow Bob, surrounded by lawn rakes, and every step you take results in a rake in the face—until you’ve left the field or expended all the rakes. (Oh, and even when you’ve left the field, there’s still a rake or two waiting to be trodden on.)
So how do we avoid, or at least minimize, these pitfalls? ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access