System Design

System Design Basics: Part 7

Multi-Data Center Setup: User requests are geo-routed depending upon the closest data center to their geo location. For example there are 2 data centers US-Scus and US-WEST then requests will be distributed as x% in US-SCUS and remaining (100-x%) in US-West. This process of geo-routing is done by geoDNS service which allows domain names to […]

System Design Basics: Part 7 Read More »

System Design Basics: Part 5

Content Delivery Network Content delivery network is a network of servers which are geographically dispersed and are used to deliver static content to the user. Some examples of static content include: Images, videos, CSS, etc. How does CDN works? Whenever a user visits website then CDN server which is closest to the user is going

System Design Basics: Part 5 Read More »

System Design Basics: Part 3

In order to handle server failover, we learnt about Load Balancer and how shifts traffic from one server to another. The same situation can happen for database also what if your database goes down? How are you going to handle this situation? Similar to multiple servers inside Database also we have multiple instances or database

System Design Basics: Part 3 Read More »

System Design Basics: Part 2

In this post we’ll learn about ways of scaling our system and importance of Load Balancer. You can scale your applications in two ways: Pre-read link Vertical Scaling Horizontal Scaling 1. Vertical scaling is referred as “scale up”, which means the process of adding more resources (CPU/Memory) to your servers. Horizontal scaling is referred as

System Design Basics: Part 2 Read More »