System Design Basics: Horizontal vs. Vertical Scaling
I am going to watch The Famous — System Design Playlist by Gaurav Sen and make notes of it for you as well as me to revise it whenever needed :)
Adding more machines to deal with increasing requirements. These machines handle requests in parallel to improve user experience.
Replacing the current machines with more advanced machines to improve throughput and hence response time. The techniques are used in conjunction with real-world systems.
What the cloud is? (Defintion for WhiteHat Jr. XD)
It’s a set of computers that you can use to run your service the reason we like to do this is that the configuration the settings the reliability can be taken care of to a large extent by the solution providers.
The ability to handle more requests by buying more machines or buying bigger machines is called scalability.
Comparison between Horizontal and Vertical Scaling
Points to be Noted:
- Network calls (RPC — Remote Procedure Calls) are slow, while Interprocess Communication is fast.
- The hybrid solution is essentially horizontal scaling only where each machine has a big box I mean each machine you try to take as big a box as possible as feasible.