Centralized vs Decentralized vs Distributed

For the last couple of months, a lot of my discussions have brought me to a single question of whether we want to go for a centralized system, a decentralized one or a distributed one?

Let me show you how these three look like.

We have had long discussions on the pros and cons and even though the debate is never ending, I want to highlight some points where these three majorly differ.

  1. Points of Failure / Maintenance : Centralized systems are easy to maintain as there is only a single point of failure. Decentralized have more but still finite. Distributed systems are the most difficult to maintain.
  2. Fault Tolerance / Stability : Centralized can be highly unstable. Kill the leader and there will be chaos. Kill the leader for a decentralized system and you will have many decentralized systems. Distributed systems are very stable and a single failure doesn’t do much harm.
  3. Scalability / Max Population : Centralized — low scalability, Decentralized — Moderate, Distributed — Infinite.
  4. Ease of development / Creation : Centralized systems can be created really fast, you pick up a framework and apply it everywhere. For Decentralized and Distributed, you have to first work out the lower level details like resource sharing (trade) and communications (transport).
  5. Evolution / Diversity : Since centralized systems follow a single framework, they don’t have diversity and evolve slowly. But for Decentralized and Distributed systems, once the basic infrastructure is in place, evolution is tremendous.

Some Suggestions

  1. If you want to grow fast and scale is not a concern, go for centralized.
  2. If you are solving a problem of scale and not in hurry, choose distributed. If in hurry, choose decentralized.
  3. If you have a strong leader, choose centralized. But if you have good managers, then choose decentralized and if you have a lot of individual contributors, then choose distributed.

If you agree to this, then please recommend & share.

If you disagree, please leave comments.