what is a distributed system & why do we need?

Is Blockchain only distributed system ?

A distributed system, if we speak with laymen terminology, it is a group of computers working together as to appear as a single computer to the end-user or end-client. These machines/computer have a shared state, operate concurrently and can fail independently without affecting the whole system’s uptime.

So then, Why distribute a system?

Before going further we have to remember, Systems are always distributed by necessity. The fact is — managing distributed systems is a complex topic chock-full of pitfalls and land mines. It is a very hectic work to deploy, maintain and debug distributed systems, so why go there at all?

What a distributed system enables you to do is scale horizontally. Suppose if we have a single database server, the only way to handle more traffic would be to upgrade the hardware the database is running on. This is called scaling vertically.

Scaling vertically is all well and good while you can, but after a certain point you will see that even the best hardware is not sufficient for enough traffic, not to mention impractical to host.

Scaling horizontally simply means adding more computers rather than upgrading the hardware of a single one. Easy scaling is not the only benefit you get from distributed systems. Fault tolerance and low latency are also equally as important.

Fault Tolerance — a cluster of ten machines across two data centers is inherently more fault-tolerant than a single machine. Even if one data center catches on fire, your application would still work.

Low Latency — The time for a network packet to travel the world is physically bounded by the speed of light. For example, the shortest possible time for a request‘s round-trip time (that is, go back and forth) in a fiber-optic cable between New York to Sydney is 160ms. Distributed systems allow you to have a node in both cities, allowing traffic to hit the node that is closest to it.

Distributed Data Store

Distributed Computing

Distributed File Systems

Distributed Messaging

Distributed Application

Distributed Ledgers

Entire world is revolving around Blockchain, but Blockchain is a piece of large cake and come’s under distributed ledger category

Distributed Ledgers

A distributed ledger can be thought of as an immutable, append-only database that is replicated, synchronized and shared across all nodes in the distributed network. Blockchain is the current underlying technology used for distributed ledgers. Blockchain is a distributed ledger carrying an ordered list of all transactions that ever occurred in its network. Transactions are grouped together and stored in blocks. The whole blockchain is essentially a linked list of blocks (hence the name). Said blocks are computationally expensive to create and are tightly linked to each other through cryptography.

Special thanks to friend Stanislav for a beautiful article

If you guys need in depth of all categories please refer to bellow awesome article.