Derek Lawless

There is always sunshine / Far above the grey sky

The fallacies of distributed computing are a set of assertions describing false assumptions made about distributed systems.

L. Peter Deutsch drafted the first 7 fallacies in 1994, with the 8th added by James Gosling in 1997.

The 8 fallacies are:

  1. The network is reliable
  2. Latency is zero
  3. Bandwidth is infinite
  4. The network is secure
  5. Topology doesn’t change
  6. There is one administrator
  7. Transport cost is zero
  8. The network is homogeneous

8. The network is homogeneous

The problem

Networks typically must support a wide variety of connected clients — from desktop-class machines to mobile and IoT devices. These devices and the applications running on them may not be interoperable and a variety of standards-based and proprietary protocols and data formats may be in use.

The network is not homogenous, it is heterogenous.

Solutions

Interoperability is key.

Where possible, avoid applications that use proprietary protocols in favour of those leveraging standards-based ones. Favour data formats that enable interoperability e.g. JSON or XML over binary formats (fallacy 7 aside) and architectures such as REST or web services, particularly when integrating with third-party services.

© 2022 Derek Lawless. Built with Gatsby