High Level Design | System Design Part - 5
In the last few parts of the SYSTEM DESIGN SERIES, we have discussed multiple concepts from web servers to databases and load balancing to data replication.
In this article, we are going to put all our learnings together and see how architecture is developed so far.
Let's try to traverse and see how a user request reaches down to the database layer and goes back
- Whenever a user requests for a website [let's say linkedIn.com] it gets a respective IP address of LinkedIn's load balancer from DNS.
- Users can connect to the load balancer with the given IP address.
- Loadbalancer routers the user request to either of the webservers based on the availability or load
- The web server routes the reads operations to the slave database.
- It routers all the data-modifying operations like write, update, and delete to the master database.
Now we have a solid understanding of how web and data tiers work, Now let's focus on reducing the load/response time for each request.
This can be done by implementing a cache layer in the webservers and we can also shift all the static content like [CSS, images, JavaScript, video files] to the Content Delivery Network (CDN).
This can be done by implementing a cache layer in the webservers and we can also shift all the static content like [CSS, images, JavaScript, video files] to the Content Delivery Network (CDN).
An in-depth understanding of Cache and CDN will be explained in upcoming articles.
Comments
Post a Comment