High Availability

Picture this: you open your favorite streaming app on a Friday night, popcorn in hand, all set to binge that new series everyone’s talking about. You hit play—and nothing happens. The app just spins. After a few refresh attempts, you give up and head to Twitter to vent about it. That frustration you just imagined? That’s what happens when a system…

Read MoreHigh Availability

URL Shortner

URL shortening is a technique on the World Wide Web in which a Uniform Resource Locator (URL) may be made substantially shorter and still direct to the required page. This is achieved by using a redirect which links to the web page that has a long URL [wikipedia] We’ve all seen them. Those neat little links that look like this: 👉 Instead of a giant wall of text like:…

Read MoreURL Shortner

Key Value Store

Key value store the first thing flashes in mind is “Map” data structure which are actually designed to store key value pairs. Key-value stores might sound simple, but they’re the quiet workhorses powering some of the biggest systems on the planet. —the simplicity hides enormous power. Key-value stores are the backbone of many large-scale systems we use every day, from caching…

Read MoreKey Value Store

Consistent Hashing

consistent hashing is the distributed hashing technique that distributes data across multiple servers in the cluster. It is used to efficiently rebalancing of the distribution of data across cluster when nodes are added ore removed (minimize data movement). It maps data and nodes on to hash ring. NoSQL database like Cassandra is the best example of use of consistent hashing. When…

Read MoreConsistent Hashing

Rate Limiting

Rate limiter is the controller to monitor and control the amount of traffic allowed to protect the network or your network of the services from attacks and overwhelming the system and eventually avoid it from crashing down. In the context of HTTP, it restricts the number of requests a client can send within a specified time period. Once the threshold is…

Read MoreRate Limiting