Search⌘ K

Sharded Services

Explore the sharded services pattern used in distributed systems to manage load by assigning subsets of requests to specific nodes called shards. Understand how load balancers distribute requests and how replication within shards maintains high availability for the system.

So far, we have seen how replicating the same service in multiple nodes can help scale our system. The gist of the idea is that each node will have the whole application hosted in it. As a result, each node can serve any request coming from any client.

In this lesson, we will learn about the sharded services pattern. In this pattern, replication is still there but in a more conditional format.

What is a shard?

We already discussed what a shard is during the discussion on data partitioning in distributed systems. We can define the term as follows.

A shard is a node that only serves a subset of the requests coming to a system. ...