bhavyasaggi.github.io
Sitemap

System Design

New-age Tech Problems. How to instantaneously serve millions of users?

A single monolith architecture is not viable anymore. Solution? Minimize the architecture & replicate them. Leads to the development of 'Distributed Systems', and not only for data, but for connections as well. Focus on Consistency and Availability.

System Architecture

Architectures are not (or should not) be about frameworks. Architectures should not be supplied by frameworks. Frameworks are tools to be used, not architectures to be conformed to. If your architecture is based on frameworks, then it cannot be based on your use cases.

Consider web or service-based architecture only, on basis of following factors:

Commonly used Infrastructure Patterns that should be known, are as follows:

Read more: https://learn.microsoft.com/en-us/azure/architecture/patterns/

Microservices vs Monolith

Monolith Microservices
Simple deployment Independent scaling
Easy testing Technology diversity
Better performance (no network calls) Fault isolation
Easier debugging Team autonomy

When to use Microservices:

Back of the envelope estimation

// ??

Popular Algorithms

Popular Examples

Essential Resources