proomt

Search

Search posts, papers, and topics

Hall of Fame

Hall of FameJim Waldo, Geoff Wyant, Ann Wollrath, Sam Kendall199438 min readpaperintermediate

A Note on Distributed Computing

Summary

The paper argues that treating remote objects the same as local ones is fundamentally flawed because distributed systems introduce latency, partial failures, and different memory semantics. It outlines a three‑phase development approach that acknowledges distribution concerns early rather than hiding them.

  • Distributed objects must expose latency and failure semantics; hiding location leads to robustness problems.
  • Systems like CORBA that aim for location transparency often cannot scale to enterprise‑wide reliability requirements.
  • A practical development flow: write abstract interfaces, then concretize object placement, then test under failures and add replication or transactions.
  • Assuming a single object model across local and remote contexts is false; designers must consider distribution early.

Engineers building large‑scale distributed services need to recognize the limits of location transparency to avoid reliability pitfalls.

6/10

Related reading

  1. Impossibility of Distributed Consensus with One Faulty Process

    The FLP paper proves that in an asynchronous distributed system, it's impossible to reach consensus if even one process can crash, assuming no synchronized clocks or reliable failure detection. This fundamental impossibility result means any practical consensus protocol must relax one of these assumptions.

    Hall of Famemit.edu20 minpaperHN164
  2. Metastable Failures in Distributed Systems

    This paper introduces and formalizes "metastable failures" in distributed systems, a class of outages where a trigger pushes a system into a bad state that persists due to a sustaining effect, even after the trigger is removed. These failures often stem from features designed for efficiency or reliability and require significant external intervention to resolve.

    Hall of Famesigops.org25 minpaperHN16112
  3. Textbook review: Is Parallel Programming Hard, And, If So, What Can You Do About It?

    A detailed, personal review of Paul McKenney’s free online textbook on parallel programming. The author, coming from a TLA⁺/distributed‑systems background, finds the early chapters excellent for building intuition about CPU caches, memory ordering, and false‑sharing, but notes gaps (e.g., shallow coverage of C++11 atomics and MESI). The review is concrete, cites specific chapters, and offers prac…

    Lobstersahelwer.ca8 minHN12757lobste.rs48