Skip to content

Master repo regarding System-Design related MicroBytes.

License

Notifications You must be signed in to change notification settings

jain-yakshit-1/System-Design

 
 

Repository files navigation

All Contributors

Contributions Welcome

GitHub License MIT

Twitter Follow

Introduction

Systems design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering.

Background

If the broader topic of product development "blends the perspective of marketing, design, and manufacturing into a single approach to product development," then design is the act of taking the marketing information and creating the design of the product to be manufactured. Systems design is therefore the process of defining and developing systems to satisfy specified requirements of the user.

The basic study of system design is the understanding of component parts and their subsequent interaction with one another.


Traffic Cop - Learn Load Balancer using HAProxy
Sites like Google which bring in high-volume traffic may inadvertently be faced 
with frequent server upgrades, so that page speed and, in turn, usability, doesn’t 
suffer for their loyal customers. Often, however, simple hardware upgrades aren’t 
enough to handle the vast traffic that some sites draw. So how do Google ensures 
that it won’t burst into figurative flames as page visits skyrocket? 
The concept of Load Balancing comes into picture.

                              — Yakshit Ravindra Jain (@jnana-cetana)

Exploring Content Delivery Network
The Internet is a constantly-changing mechanism, and new forms of data and content 
are constantly being created. Soon after it was made commercially available, the 
problem of pushing massive amounts of data to the end user as fast as possible had 
to be solved. Enter CDNs.

                              — Yakshit Ravindra Jain (@jnana-cetana)

Exploring Caching
In this microbyte, we will commence by a small Case Study of Caching in real life 
so the laymen can relate to it, learn LRU Algorithm through visual representation 
(talk less show more) methodology, and explore the application of cache in 
computer systems like Linux Page Cache and DNS Cache. 

                              — Yakshit Ravindra Jain (@jnana-cetana)

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Ayush Kumar Shaw

💻 📖 📋 🤔 🚧 👀

Crio.Do

📋

Yakshit Ravindra Jain

💻 🖋 📖 🤔

Amogh Rajesh Desai

👀 📋

Kevin Paulose

👀 📋

Sudhanshu tiwari

👀 📋

Archithdwij

👀 📋

This project follows the all-contributors specification. Contributions of any kind welcome!

About

Master repo regarding System-Design related MicroBytes.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%