Why is it better to use horizontal scaling than vertical scaling?
- Horizontal scaling is a cost-effective strategy, utilizing multiple affordable machines, as opposed to the expensive upgrades involved in vertical scaling.
- Improved fault tolerance is a key advantage of horizontal scaling, with multiple machines able to handle loads and avoid a single point of failure.
- Horizontal scaling allows for dynamic resource adjustments based on demand, offering flexibility, while vertical scaling may require downtime for changes.
- Efficient resource utilization is achieved through horizontal scaling by distributing workloads across machines, avoiding potential over-provisioning seen in vertical scaling.
- Achieving higher scalability is more straightforward with horizontal scaling by adding more machines, in contrast to vertical scalingās inherent hardware limitations.
Top Most Asked System Design Interview Questions
System Design is defined as a process of creating an architecture for different components, interfaces, and modules of the system and providing corresponding data helpful in implementing such elements in systems.
Table of Content
- 1. Why is it better to use horizontal scaling than vertical scaling?
- 2. What is sharding, and how does it improve database scalability?
- 3. What is CAP theorem?
- 4. What do you understand by load balancer? Why is it important in system design?
- 5. What are the various Consistency patterns available in system design?
- 6. When would you use cache layer of a system?
- 7. A reverse proxy in a web architecture means what?
- 8. Outline the role played by a CDN in Web Architecture.
- 9. Describe the concepts of RESTful API principles.
- 10. How does a message broker operate within a distributed environment?
- 11. Why should we use NoSQL database?
- 12. What does the Singleton Design Pattern aim at?
- 13. Discuss what is consistent hashing ?
- 14. Why is the two-phase commit protocol important?
- 15. What are vector clocks in the context of the distributed system?
- 16. Explain the function of consensus algorithms in distributed systems.
- 17. How does the āgraceful degradationā principle impacts on system design?
- 18. What are the bottlenecks in system design?
- Conclusion
Contact Us