Microservices is a new buzzword in town. Companies are trying to get on to this bandwagon and trying to migrate their existing application to this SOA-like architecture. But Microservice is not an entirely new concepts and neither is the basic principles it is based on. Microservice can be vaguely considered as a fork of SOA or Service-oriented architecture and hence can be considered as a part of distributed computing framework.
Distributed computing has been around for ages and has proven to be one of the more robust and scalable paradigms on which to base your systems on. One of the interesting observational pieces released for distributed computing was written by Peter Deutsch of Sun Microsystems in 1994 titled “Fallacies of Distributed Computing” (later updated by James Gosling in 1997). This whitepaper focused on 7 assumptions that are made by developers while developing distributed systems. It has been observed time & again that these assumptions form the source of great pains to the developers & architects in the long run.
The following are the 8 fallacies noted in the whitepaper:
- The network is reliable.
- Latency is zero.
- Bandwidth is infinite.
- The network is secure.
- Topology doesn’t change.
- There is one administrator.
- Transport cost is zero.
- The network is homogeneous
Let’s try to see if these fallacies still hold true in the cloud-based microservice world as well or does the combination of microservices and cloud computing can help ease paints in these areas. We will rate each fallacy according to its relevance with 1★ being the least relevant and 5★ being completely relevant.
Download the whitepaper to learn more about the relevance of 8 fallacies in the cloud-based microservices world.