René's URL Explorer Experiment


Title: GitHub - fe-project/system-design: Learn how to design systems at scale and prepare for system design interviews

Open Graph Title: GitHub - fe-project/system-design: Learn how to design systems at scale and prepare for system design interviews

X Title: GitHub - fe-project/system-design: Learn how to design systems at scale and prepare for system design interviews

Description: Learn how to design systems at scale and prepare for system design interviews - fe-project/system-design

Open Graph Description: Learn how to design systems at scale and prepare for system design interviews - fe-project/system-design

X Description: Learn how to design systems at scale and prepare for system design interviews - fe-project/system-design

Opengraph URL: https://github.com/fe-project/system-design

X: @github

direct link

Domain: patch-diff.githubusercontent.com

route-pattern/:user_id/:repository
route-controllerfiles
route-actiondisambiguate
fetch-noncev2:282ebb1d-0f2a-ac9c-0377-ba0905898ee8
current-catalog-service-hashf3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb
request-idD848:162028:45D202:5E889C:697CF262
html-safe-nonce9468a54700d07227f68865685c4543f982066ffab8a8c2094092c2d690d38bb8
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEODQ4OjE2MjAyODo0NUQyMDI6NUU4ODlDOjY5N0NGMjYyIiwidmlzaXRvcl9pZCI6IjY3NDM4MzEzMjIwNzU5MTg5NDYiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac53f47b3f98b9fccf462e4f80055ac261d1bb1a84c103df73caca7a86dcd54843
hovercard-subject-tagrepository:527221320
github-keyboard-shortcutsrepository,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location//
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/fe-project/system-design
twitter:imagehttps://opengraph.githubassets.com/c052d59449c7fb2d0a266e5bc5bae89954f826738cd7a6576adcd0c9c7f8d142/fe-project/system-design
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/c052d59449c7fb2d0a266e5bc5bae89954f826738cd7a6576adcd0c9c7f8d142/fe-project/system-design
og:image:altLearn how to design systems at scale and prepare for system design interviews - fe-project/system-design
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None28e7ca4155534425a15f1dc5e08f1b68ec10cd34457a151b54350f3c41509ccd
turbo-cache-controlno-preview
go-importgithub.com/fe-project/system-design git https://github.com/fe-project/system-design.git
octolytics-dimension-user_id83260952
octolytics-dimension-user_loginfe-project
octolytics-dimension-repository_id527221320
octolytics-dimension-repository_nwofe-project/system-design
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forktrue
octolytics-dimension-repository_parent_id525105056
octolytics-dimension-repository_parent_nwokaranpratapsingh/system-design
octolytics-dimension-repository_network_root_id525105056
octolytics-dimension-repository_network_root_nwokaranpratapsingh/system-design
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasea52bcabff335e5b06d23d036f06e742e55f85cd9
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/fe-project/system-design#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Ffe-project%2Fsystem-design
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Ffe-project%2Fsystem-design
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=fe-project%2Fsystem-design
Reloadhttps://patch-diff.githubusercontent.com/fe-project/system-design
Reloadhttps://patch-diff.githubusercontent.com/fe-project/system-design
Reloadhttps://patch-diff.githubusercontent.com/fe-project/system-design
fe-project https://patch-diff.githubusercontent.com/fe-project
system-designhttps://patch-diff.githubusercontent.com/fe-project/system-design
karanpratapsingh/system-designhttps://patch-diff.githubusercontent.com/karanpratapsingh/system-design
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Ffe-project%2Fsystem-design
Fork 0 https://patch-diff.githubusercontent.com/login?return_to=%2Ffe-project%2Fsystem-design
Star 0 https://patch-diff.githubusercontent.com/login?return_to=%2Ffe-project%2Fsystem-design
www.karanpratapsingh.com/courses/system-designhttps://www.karanpratapsingh.com/courses/system-design
GPL-3.0 license https://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/LICENSE
0 stars https://patch-diff.githubusercontent.com/fe-project/system-design/stargazers
5k forks https://patch-diff.githubusercontent.com/fe-project/system-design/forks
Branches https://patch-diff.githubusercontent.com/fe-project/system-design/branches
Tags https://patch-diff.githubusercontent.com/fe-project/system-design/tags
Activity https://patch-diff.githubusercontent.com/fe-project/system-design/activity
Star https://patch-diff.githubusercontent.com/login?return_to=%2Ffe-project%2Fsystem-design
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Ffe-project%2Fsystem-design
Code https://patch-diff.githubusercontent.com/fe-project/system-design
Pull requests 0 https://patch-diff.githubusercontent.com/fe-project/system-design/pulls
Actions https://patch-diff.githubusercontent.com/fe-project/system-design/actions
Projects 0 https://patch-diff.githubusercontent.com/fe-project/system-design/projects
Security 0 https://patch-diff.githubusercontent.com/fe-project/system-design/security
Insights https://patch-diff.githubusercontent.com/fe-project/system-design/pulse
Code https://patch-diff.githubusercontent.com/fe-project/system-design
Pull requests https://patch-diff.githubusercontent.com/fe-project/system-design/pulls
Actions https://patch-diff.githubusercontent.com/fe-project/system-design/actions
Projects https://patch-diff.githubusercontent.com/fe-project/system-design/projects
Security https://patch-diff.githubusercontent.com/fe-project/system-design/security
Insights https://patch-diff.githubusercontent.com/fe-project/system-design/pulse
Brancheshttps://patch-diff.githubusercontent.com/fe-project/system-design/branches
Tagshttps://patch-diff.githubusercontent.com/fe-project/system-design/tags
https://patch-diff.githubusercontent.com/fe-project/system-design/branches
https://patch-diff.githubusercontent.com/fe-project/system-design/tags
12 Commitshttps://patch-diff.githubusercontent.com/fe-project/system-design/commits/main/
https://patch-diff.githubusercontent.com/fe-project/system-design/commits/main/
diagramshttps://patch-diff.githubusercontent.com/fe-project/system-design/tree/main/diagrams
diagramshttps://patch-diff.githubusercontent.com/fe-project/system-design/tree/main/diagrams
.gitignorehttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/.gitignore
.gitignorehttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/.gitignore
LICENSEhttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/LICENSE
LICENSEhttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/LICENSE
README.mdhttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/README.md
README.mdhttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/README.md
READMEhttps://patch-diff.githubusercontent.com/fe-project/system-design
Licensehttps://patch-diff.githubusercontent.com/fe-project/system-design
https://patch-diff.githubusercontent.com/fe-project/system-design#system-design-course
websitehttps://karanpratapsingh.com/courses/system-design
https://patch-diff.githubusercontent.com/fe-project/system-design#table-of-contents
What is system design?https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-system-design
IPhttps://patch-diff.githubusercontent.com/fe-project/system-design#ip
OSI Modelhttps://patch-diff.githubusercontent.com/fe-project/system-design#osi-model
TCP and UDPhttps://patch-diff.githubusercontent.com/fe-project/system-design#tcp-and-udp
Domain Name System (DNS)https://patch-diff.githubusercontent.com/fe-project/system-design#domain-name-system-dns
Load Balancinghttps://patch-diff.githubusercontent.com/fe-project/system-design#load-balancing
Clusteringhttps://patch-diff.githubusercontent.com/fe-project/system-design#clustering
Cachinghttps://patch-diff.githubusercontent.com/fe-project/system-design#caching
Content Delivery Network (CDN)https://patch-diff.githubusercontent.com/fe-project/system-design#content-delivery-network-cdn
Proxyhttps://patch-diff.githubusercontent.com/fe-project/system-design#proxy
Availabilityhttps://patch-diff.githubusercontent.com/fe-project/system-design#availability
Scalabilityhttps://patch-diff.githubusercontent.com/fe-project/system-design#scalability
Storagehttps://patch-diff.githubusercontent.com/fe-project/system-design#storage
Databases and DBMShttps://patch-diff.githubusercontent.com/fe-project/system-design#databases-and-dbms
SQL databaseshttps://patch-diff.githubusercontent.com/fe-project/system-design#sql-databases
NoSQL databaseshttps://patch-diff.githubusercontent.com/fe-project/system-design#nosql-databases
SQL vs NoSQL databaseshttps://patch-diff.githubusercontent.com/fe-project/system-design#sql-vs-nosql-databases
Database Replicationhttps://patch-diff.githubusercontent.com/fe-project/system-design#database-replication
Indexeshttps://patch-diff.githubusercontent.com/fe-project/system-design#indexes
Normalization and Denormalizationhttps://patch-diff.githubusercontent.com/fe-project/system-design#normalization-and-denormalization
ACID and BASE consistency modelshttps://patch-diff.githubusercontent.com/fe-project/system-design#acid-and-base-consistency-models
CAP theoremhttps://patch-diff.githubusercontent.com/fe-project/system-design#cap-theorem
PACELC Theoremhttps://patch-diff.githubusercontent.com/fe-project/system-design#pacelc-theorem
Transactionshttps://patch-diff.githubusercontent.com/fe-project/system-design#transactions
Distributed Transactionshttps://patch-diff.githubusercontent.com/fe-project/system-design#distributed-transactions
Shardinghttps://patch-diff.githubusercontent.com/fe-project/system-design#sharding
Consistent Hashinghttps://patch-diff.githubusercontent.com/fe-project/system-design#consistent-hashing
Database Federationhttps://patch-diff.githubusercontent.com/fe-project/system-design#database-federation
N-tier architecturehttps://patch-diff.githubusercontent.com/fe-project/system-design#n-tier-architecture
Message Brokershttps://patch-diff.githubusercontent.com/fe-project/system-design#message-brokers
Message Queueshttps://patch-diff.githubusercontent.com/fe-project/system-design#message-queues
Publish-Subscribehttps://patch-diff.githubusercontent.com/fe-project/system-design#publish-subscribe
Enterprise Service Bus (ESB)https://patch-diff.githubusercontent.com/fe-project/system-design#enterprise-service-bus-esb
Monoliths and Microserviceshttps://patch-diff.githubusercontent.com/fe-project/system-design#monoliths-and-microservices
Event-Driven Architecture (EDA)https://patch-diff.githubusercontent.com/fe-project/system-design#event-driven-architecture-eda
Event Sourcinghttps://patch-diff.githubusercontent.com/fe-project/system-design#event-sourcing
Command and Query Responsibility Segregation (CQRS)https://patch-diff.githubusercontent.com/fe-project/system-design#command-and-query-responsibility-segregation-cqrs
API Gatewayhttps://patch-diff.githubusercontent.com/fe-project/system-design#api-gateway
REST, GraphQL, gRPChttps://patch-diff.githubusercontent.com/fe-project/system-design#rest-graphql-grpc
Long polling, WebSockets, Server-Sent Events (SSE)https://patch-diff.githubusercontent.com/fe-project/system-design#long-polling-websockets-server-sent-events-sse
Geohashing and Quadtreeshttps://patch-diff.githubusercontent.com/fe-project/system-design#geohashing-and-quadtrees
Circuit breakerhttps://patch-diff.githubusercontent.com/fe-project/system-design#circuit-breaker
Rate Limitinghttps://patch-diff.githubusercontent.com/fe-project/system-design#rate-limiting
Service Discoveryhttps://patch-diff.githubusercontent.com/fe-project/system-design#service-discovery
SLA, SLO, SLIhttps://patch-diff.githubusercontent.com/fe-project/system-design#sla-slo-sli
Disaster recoveryhttps://patch-diff.githubusercontent.com/fe-project/system-design#disaster-recovery
Virtual Machines (VMs) and Containershttps://patch-diff.githubusercontent.com/fe-project/system-design#virtual-machines-vms-and-containers
OAuth 2.0 and OpenID Connect (OIDC)https://patch-diff.githubusercontent.com/fe-project/system-design#oauth-20-and-openid-connect-oidc
Single Sign-On (SSO)https://patch-diff.githubusercontent.com/fe-project/system-design#single-sign-on-sso
SSL, TLS, mTLShttps://patch-diff.githubusercontent.com/fe-project/system-design#ssl-tls-mtls
System Design Interviewshttps://patch-diff.githubusercontent.com/fe-project/system-design#system-design-interviews
URL Shortenerhttps://patch-diff.githubusercontent.com/fe-project/system-design#url-shortener
Whatsapphttps://patch-diff.githubusercontent.com/fe-project/system-design#whatsapp
Twitterhttps://patch-diff.githubusercontent.com/fe-project/system-design#twitter
Netflixhttps://patch-diff.githubusercontent.com/fe-project/system-design#netflix
Uberhttps://patch-diff.githubusercontent.com/fe-project/system-design#uber
Next Stepshttps://patch-diff.githubusercontent.com/fe-project/system-design#next-steps
Referenceshttps://patch-diff.githubusercontent.com/fe-project/system-design#references
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-system-design
https://patch-diff.githubusercontent.com/fe-project/system-design#why-is-system-design-so-important
https://patch-diff.githubusercontent.com/fe-project/system-design#ip
https://patch-diff.githubusercontent.com/fe-project/system-design#versions
https://patch-diff.githubusercontent.com/fe-project/system-design#ipv4
https://patch-diff.githubusercontent.com/fe-project/system-design#ipv6
https://patch-diff.githubusercontent.com/fe-project/system-design#types
https://patch-diff.githubusercontent.com/fe-project/system-design#public
https://patch-diff.githubusercontent.com/fe-project/system-design#private
https://patch-diff.githubusercontent.com/fe-project/system-design#static
https://patch-diff.githubusercontent.com/fe-project/system-design#dynamic
Dynamic Host Configuration Protocol (DHCP)https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol
https://patch-diff.githubusercontent.com/fe-project/system-design#osi-model
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/osi-model/osi-model.png
https://patch-diff.githubusercontent.com/fe-project/system-design#why-does-the-osi-model-matter
https://patch-diff.githubusercontent.com/fe-project/system-design#layers
https://patch-diff.githubusercontent.com/fe-project/system-design#application
https://patch-diff.githubusercontent.com/fe-project/system-design#presentation
https://patch-diff.githubusercontent.com/fe-project/system-design#session
https://patch-diff.githubusercontent.com/fe-project/system-design#transport
https://patch-diff.githubusercontent.com/fe-project/system-design#network
https://patch-diff.githubusercontent.com/fe-project/system-design#data-link
https://patch-diff.githubusercontent.com/fe-project/system-design#physical
https://patch-diff.githubusercontent.com/fe-project/system-design#tcp-and-udp
https://patch-diff.githubusercontent.com/fe-project/system-design#tcp
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/tcp-and-udp/tcp.png
https://patch-diff.githubusercontent.com/fe-project/system-design#udp
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/tcp-and-udp/udp.png
https://patch-diff.githubusercontent.com/fe-project/system-design#tcp-vs-udp
https://patch-diff.githubusercontent.com/fe-project/system-design#domain-name-system-dns
https://patch-diff.githubusercontent.com/fe-project/system-design#how-dns-works
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/domain-name-system/how-dns-works.png
example.comhttp://example.com
example.comhttp://example.com
example.comhttp://example.com
https://patch-diff.githubusercontent.com/fe-project/system-design#server-types
https://patch-diff.githubusercontent.com/fe-project/system-design#dns-resolver
https://patch-diff.githubusercontent.com/fe-project/system-design#dns-root-server
Internet Corporation for Assigned Names and Numbers (ICANN)https://www.icann.org
Anycast routinghttps://en.wikipedia.org/wiki/Anycast
https://patch-diff.githubusercontent.com/fe-project/system-design#tld-nameserver
Internet Assigned Numbers Authority (IANA)https://www.iana.org
ICANNhttps://www.icann.org
https://patch-diff.githubusercontent.com/fe-project/system-design#authoritative-dns-server
google.comhttp://google.com
https://patch-diff.githubusercontent.com/fe-project/system-design#query-types
https://patch-diff.githubusercontent.com/fe-project/system-design#recursive
https://patch-diff.githubusercontent.com/fe-project/system-design#iterative
https://patch-diff.githubusercontent.com/fe-project/system-design#non-recursive
https://patch-diff.githubusercontent.com/fe-project/system-design#records-types
https://patch-diff.githubusercontent.com/fe-project/system-design#subdomains
https://patch-diff.githubusercontent.com/fe-project/system-design#dns-zones
https://patch-diff.githubusercontent.com/fe-project/system-design#dns-caching
https://patch-diff.githubusercontent.com/fe-project/system-design#reverse-dns
https://patch-diff.githubusercontent.com/fe-project/system-design#examples
Route53https://aws.amazon.com/route53
Cloudflare DNShttps://www.cloudflare.com/dns
Google Cloud DNShttps://cloud.google.com/dns
Azure DNShttps://azure.microsoft.com/en-in/services/dns
NS1https://ns1.com/products/managed-dns
https://patch-diff.githubusercontent.com/fe-project/system-design#load-balancing
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/load-balancing/load-balancer.png
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/load-balancing/load-balancer-layers.png
https://patch-diff.githubusercontent.com/fe-project/system-design#but-why
https://patch-diff.githubusercontent.com/fe-project/system-design#workload-distribution
https://patch-diff.githubusercontent.com/fe-project/system-design#layers-1
https://patch-diff.githubusercontent.com/fe-project/system-design#network-layer
https://patch-diff.githubusercontent.com/fe-project/system-design#application-layer
https://patch-diff.githubusercontent.com/fe-project/system-design#types-1
https://patch-diff.githubusercontent.com/fe-project/system-design#software
https://patch-diff.githubusercontent.com/fe-project/system-design#hardware
https://patch-diff.githubusercontent.com/fe-project/system-design#dns
https://patch-diff.githubusercontent.com/fe-project/system-design#routing-algorithms
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages
https://patch-diff.githubusercontent.com/fe-project/system-design#redundant-load-balancers
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/load-balancing/redundant-load-balancer.png
https://patch-diff.githubusercontent.com/fe-project/system-design#features
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-1
Amazon Elastic Load Balancinghttps://aws.amazon.com/elasticloadbalancing
Azure Load Balancinghttps://azure.microsoft.com/en-in/services/load-balancer
GCP Load Balancinghttps://cloud.google.com/load-balancing
DigitalOcean Load Balancerhttps://www.digitalocean.com/products/load-balancer
Nginxhttps://www.nginx.com
HAProxyhttp://www.haproxy.org
https://patch-diff.githubusercontent.com/fe-project/system-design#clustering
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/clustering/cluster.png
https://patch-diff.githubusercontent.com/fe-project/system-design#types-2
https://patch-diff.githubusercontent.com/fe-project/system-design#configurations
https://patch-diff.githubusercontent.com/fe-project/system-design#active-active
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/clustering/active-active.png
https://patch-diff.githubusercontent.com/fe-project/system-design#active-passive
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/clustering/active-passive.png
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-1
https://patch-diff.githubusercontent.com/fe-project/system-design#load-balancing-vs-clustering
https://patch-diff.githubusercontent.com/fe-project/system-design#challenges
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-2
Kuberneteshttps://kubernetes.io
Amazon ECShttps://aws.amazon.com/ecs
Cassandrahttps://cassandra.apache.org/_/index.html
MongoDBhttps://www.mongodb.com
Redishttps://redis.io/docs/manual/scaling
https://patch-diff.githubusercontent.com/fe-project/system-design#caching
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/caching/caching.png
https://patch-diff.githubusercontent.com/fe-project/system-design#caching-and-memory
https://patch-diff.githubusercontent.com/fe-project/system-design#cache-hit-and-cache-miss
https://patch-diff.githubusercontent.com/fe-project/system-design#cache-hit
https://patch-diff.githubusercontent.com/fe-project/system-design#cache-miss
https://patch-diff.githubusercontent.com/fe-project/system-design#cache-invalidation
https://patch-diff.githubusercontent.com/fe-project/system-design#write-through-cache
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/caching/write-through-cache.png
https://patch-diff.githubusercontent.com/fe-project/system-design#write-around-cache
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/caching/write-around-cache.png
https://patch-diff.githubusercontent.com/fe-project/system-design#write-back-cache
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/caching/write-back-cache.png
https://patch-diff.githubusercontent.com/fe-project/system-design#eviction-policies
https://patch-diff.githubusercontent.com/fe-project/system-design#distributed-cache
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/caching/distributed-cache.png
https://patch-diff.githubusercontent.com/fe-project/system-design#global-cache
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/caching/global-cache.png
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-2
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-3
Redishttps://redis.io
Memcachedhttps://memcached.org
Amazon Elasticachehttps://aws.amazon.com/elasticache
Aerospikehttps://aerospike.com
https://patch-diff.githubusercontent.com/fe-project/system-design#content-delivery-network-cdn
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/content-delivery-network/cdn-map.png
https://patch-diff.githubusercontent.com/fe-project/system-design#why-use-a-cdn
https://patch-diff.githubusercontent.com/fe-project/system-design#how-does-a-cdn-work
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/content-delivery-network/cdn.png
https://patch-diff.githubusercontent.com/fe-project/system-design#types-3
https://patch-diff.githubusercontent.com/fe-project/system-design#push-cdns
https://patch-diff.githubusercontent.com/fe-project/system-design#pull-cdns
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-4
Amazon CloudFronthttps://aws.amazon.com/cloudfront
Google Cloud CDNhttps://cloud.google.com/cdn
Cloudflare CDNhttps://www.cloudflare.com/cdn
Fastlyhttps://www.fastly.com/products/cdn
https://patch-diff.githubusercontent.com/fe-project/system-design#proxy
https://patch-diff.githubusercontent.com/fe-project/system-design#types-4
https://patch-diff.githubusercontent.com/fe-project/system-design#forward-proxy
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/proxy/forward-proxy.png
geo-restrictedhttps://en.wikipedia.org/wiki/Geo-blocking
https://patch-diff.githubusercontent.com/fe-project/system-design#reverse-proxy
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/proxy/reverse-proxy.png
https://patch-diff.githubusercontent.com/fe-project/system-design#load-balancer-vs-reverse-proxy
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-5
Nginxhttps://www.nginx.com
HAProxyhttp://www.haproxy.org
Traefikhttps://doc.traefik.io/traefik
Envoyhttps://www.envoyproxy.io
https://patch-diff.githubusercontent.com/fe-project/system-design#availability
https://patch-diff.githubusercontent.com/fe-project/system-design#the-nines-of-availability
https://patch-diff.githubusercontent.com/fe-project/system-design#availability-in-sequence-vs-parallel
https://patch-diff.githubusercontent.com/fe-project/system-design#sequence
https://patch-diff.githubusercontent.com/fe-project/system-design#parallel
https://patch-diff.githubusercontent.com/fe-project/system-design#availability-vs-reliability
https://patch-diff.githubusercontent.com/fe-project/system-design#high-availability-vs-fault-tolerance
https://patch-diff.githubusercontent.com/fe-project/system-design#scalability
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-I/scalability/scalability.png
https://patch-diff.githubusercontent.com/fe-project/system-design#vertical-scaling
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-3
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-1
https://patch-diff.githubusercontent.com/fe-project/system-design#horizontal-scaling
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-4
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-2
https://patch-diff.githubusercontent.com/fe-project/system-design#storage
https://patch-diff.githubusercontent.com/fe-project/system-design#raid
https://patch-diff.githubusercontent.com/fe-project/system-design#comparison
https://patch-diff.githubusercontent.com/fe-project/system-design#volumes
https://patch-diff.githubusercontent.com/fe-project/system-design#file-storage
Amazon EFShttps://aws.amazon.com/efs
Azure fileshttps://azure.microsoft.com/en-in/services/storage/files
Google Cloud Filestorehttps://cloud.google.com/filestore
https://patch-diff.githubusercontent.com/fe-project/system-design#block-storage
Amazon EBShttps://aws.amazon.com/ebs
https://patch-diff.githubusercontent.com/fe-project/system-design#object-storage
Amazon S3https://aws.amazon.com/s3
Azure Blob Storagehttps://azure.microsoft.com/en-in/services/storage/blobs
Google Cloud Storagehttps://cloud.google.com/storage
https://patch-diff.githubusercontent.com/fe-project/system-design#nas
https://patch-diff.githubusercontent.com/fe-project/system-design#hdfs
https://patch-diff.githubusercontent.com/fe-project/system-design#databases-and-dbms
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-a-database
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-dbms
https://patch-diff.githubusercontent.com/fe-project/system-design#components
https://patch-diff.githubusercontent.com/fe-project/system-design#schema
https://patch-diff.githubusercontent.com/fe-project/system-design#table
https://patch-diff.githubusercontent.com/fe-project/system-design#column
https://patch-diff.githubusercontent.com/fe-project/system-design#row
https://patch-diff.githubusercontent.com/fe-project/system-design#types-5
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/databases-and-dbms/database-types.png
SQLhttps://karanpratapsingh.com/courses/system-design/sql-databases
NoSQLhttps://karanpratapsingh.com/courses/system-design/nosql-databases
SQL databaseshttps://karanpratapsingh.com/courses/system-design/sql-databases
NoSQL databaseshttps://karanpratapsingh.com/courses/system-design/nosql-databases
SQL vs NoSQL databaseshttps://karanpratapsingh.com/courses/system-design/sql-vs-nosql-databases
https://patch-diff.githubusercontent.com/fe-project/system-design#challenges-1
https://patch-diff.githubusercontent.com/fe-project/system-design#sql-databases
ACID consistency modelhttps://karanpratapsingh.com/courses/system-design/acid-and-base-consistency-models#acid
https://patch-diff.githubusercontent.com/fe-project/system-design#materialized-views
https://patch-diff.githubusercontent.com/fe-project/system-design#n1-query-problem
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-5
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-3
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-6
PostgreSQLhttps://www.postgresql.org
MySQLhttps://www.mysql.com
MariaDBhttps://mariadb.org
Amazon Aurorahttps://aws.amazon.com/rds/aurora
https://patch-diff.githubusercontent.com/fe-project/system-design#nosql-databases
BASE consistency modelhttps://karanpratapsingh.com/courses/system-design/acid-and-base-consistency-models#base
https://patch-diff.githubusercontent.com/fe-project/system-design#document
MongoDBhttps://www.mongodb.com
Amazon DocumentDBhttps://aws.amazon.com/documentdb
CouchDBhttps://couchdb.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#key-value
Redishttps://redis.io
Memcachedhttps://memcached.org
Amazon DynamoDBhttps://aws.amazon.com/dynamodb
Aerospikehttps://aerospike.com
https://patch-diff.githubusercontent.com/fe-project/system-design#graph
Neo4jhttps://neo4j.com
ArangoDBhttps://www.arangodb.com
Amazon Neptunehttps://aws.amazon.com/neptune
JanusGraphhttps://janusgraph.org
https://patch-diff.githubusercontent.com/fe-project/system-design#time-series
InfluxDBhttps://www.influxdata.com
Apache Druidhttps://druid.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#wide-column
BigTablehttps://cloud.google.com/bigtable
Apache Cassandrahttps://cassandra.apache.org
ScyllaDBhttps://www.scylladb.com
https://patch-diff.githubusercontent.com/fe-project/system-design#multi-model
ArangoDBhttps://www.arangodb.com
Azure Cosmos DBhttps://azure.microsoft.com/en-in/services/cosmos-db
Couchbasehttps://www.couchbase.com
https://patch-diff.githubusercontent.com/fe-project/system-design#sql-vs-nosql-databases
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-differences
https://patch-diff.githubusercontent.com/fe-project/system-design#storage-1
https://patch-diff.githubusercontent.com/fe-project/system-design#schema-1
https://patch-diff.githubusercontent.com/fe-project/system-design#querying
https://patch-diff.githubusercontent.com/fe-project/system-design#scalability-1
https://patch-diff.githubusercontent.com/fe-project/system-design#reliability
https://patch-diff.githubusercontent.com/fe-project/system-design#reasons
https://patch-diff.githubusercontent.com/fe-project/system-design#database-replication
https://patch-diff.githubusercontent.com/fe-project/system-design#master-slave-replication
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/database-replication/master-slave-replication.png
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-6
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-4
https://patch-diff.githubusercontent.com/fe-project/system-design#master-master-replication
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/database-replication/master-master-replication.png
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-7
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-5
https://patch-diff.githubusercontent.com/fe-project/system-design#synchronous-vs-asynchronous-replication
https://patch-diff.githubusercontent.com/fe-project/system-design#indexes
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/indexes/indexes.png
https://patch-diff.githubusercontent.com/fe-project/system-design#dense-index
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/indexes/dense-index.png
https://patch-diff.githubusercontent.com/fe-project/system-design#sparse-index
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/indexes/sparse-index.png
https://patch-diff.githubusercontent.com/fe-project/system-design#normalization-and-denormalization
https://patch-diff.githubusercontent.com/fe-project/system-design#terms
https://patch-diff.githubusercontent.com/fe-project/system-design#keys
https://patch-diff.githubusercontent.com/fe-project/system-design#dependencies
https://patch-diff.githubusercontent.com/fe-project/system-design#anomalies
https://patch-diff.githubusercontent.com/fe-project/system-design#normalization
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-normalization
https://patch-diff.githubusercontent.com/fe-project/system-design#normal-forms
amazing videohttps://www.youtube.com/watch?v=GFQaEYEc8_8
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-8
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-6
https://patch-diff.githubusercontent.com/fe-project/system-design#denormalization
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-9
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-7
https://patch-diff.githubusercontent.com/fe-project/system-design#acid-and-base-consistency-models
https://patch-diff.githubusercontent.com/fe-project/system-design#acid
https://patch-diff.githubusercontent.com/fe-project/system-design#atomic
https://patch-diff.githubusercontent.com/fe-project/system-design#consistent
https://patch-diff.githubusercontent.com/fe-project/system-design#isolated
https://patch-diff.githubusercontent.com/fe-project/system-design#durable
https://patch-diff.githubusercontent.com/fe-project/system-design#base
https://patch-diff.githubusercontent.com/fe-project/system-design#basic-availability
https://patch-diff.githubusercontent.com/fe-project/system-design#soft-state
https://patch-diff.githubusercontent.com/fe-project/system-design#eventual-consistency
https://patch-diff.githubusercontent.com/fe-project/system-design#acid-vs-base-trade-offs
https://patch-diff.githubusercontent.com/fe-project/system-design#cap-theorem
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/cap-theorem/cap-theorem.png
https://patch-diff.githubusercontent.com/fe-project/system-design#consistency
https://patch-diff.githubusercontent.com/fe-project/system-design#availability-1
https://patch-diff.githubusercontent.com/fe-project/system-design#partition-tolerance
https://patch-diff.githubusercontent.com/fe-project/system-design#consistency-availability-tradeoff
https://patch-diff.githubusercontent.com/fe-project/system-design#ca-database
PostgreSQLhttps://www.postgresql.org
MariaDBhttps://mariadb.org
https://patch-diff.githubusercontent.com/fe-project/system-design#cp-database
MongoDBhttps://www.mongodb.com
Apache HBasehttps://hbase.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#ap-database
Apache Cassandrahttps://cassandra.apache.org
CouchDBhttps://couchdb.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#pacelc-theorem
Daniel J. Abadihttps://scholar.google.com/citations?user=zxeEF2gAAAAJ
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/pacelc-theorem/pacelc-theorem.png
https://patch-diff.githubusercontent.com/fe-project/system-design#transactions
https://patch-diff.githubusercontent.com/fe-project/system-design#states
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/transactions/transaction-states.png
https://patch-diff.githubusercontent.com/fe-project/system-design#active
https://patch-diff.githubusercontent.com/fe-project/system-design#partially-committed
https://patch-diff.githubusercontent.com/fe-project/system-design#committed
https://patch-diff.githubusercontent.com/fe-project/system-design#failed
https://patch-diff.githubusercontent.com/fe-project/system-design#aborted
https://patch-diff.githubusercontent.com/fe-project/system-design#terminated
https://patch-diff.githubusercontent.com/fe-project/system-design#distributed-transactions
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-distributed-transactions
https://patch-diff.githubusercontent.com/fe-project/system-design#two-phase-commit
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/distributed-transactions/two-phase-commit.png
https://patch-diff.githubusercontent.com/fe-project/system-design#phases
https://patch-diff.githubusercontent.com/fe-project/system-design#problems
https://patch-diff.githubusercontent.com/fe-project/system-design#three-phase-commit
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/distributed-transactions/three-phase-commit.png
https://patch-diff.githubusercontent.com/fe-project/system-design#phases-1
https://patch-diff.githubusercontent.com/fe-project/system-design#why-is-the-pre-commit-phase-helpful
https://patch-diff.githubusercontent.com/fe-project/system-design#sagas
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/distributed-transactions/sagas.png
https://patch-diff.githubusercontent.com/fe-project/system-design#coordination
https://patch-diff.githubusercontent.com/fe-project/system-design#problems-1
https://patch-diff.githubusercontent.com/fe-project/system-design#sharding
https://patch-diff.githubusercontent.com/fe-project/system-design#data-partitioning
https://patch-diff.githubusercontent.com/fe-project/system-design#methods
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-sharding
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/sharding/sharding.png
https://patch-diff.githubusercontent.com/fe-project/system-design#partitioning-criteria
https://patch-diff.githubusercontent.com/fe-project/system-design#hash-based
https://patch-diff.githubusercontent.com/fe-project/system-design#list-based
https://patch-diff.githubusercontent.com/fe-project/system-design#range-based
https://patch-diff.githubusercontent.com/fe-project/system-design#composite
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-10
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-8
https://patch-diff.githubusercontent.com/fe-project/system-design#when-to-use-sharding
https://patch-diff.githubusercontent.com/fe-project/system-design#consistent-hashing
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-this
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/consistent-hashing/simple-hashing.png
https://patch-diff.githubusercontent.com/fe-project/system-design#how-does-it-work
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/consistent-hashing/consistent-hashing.png
https://patch-diff.githubusercontent.com/fe-project/system-design#virtual-nodes
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/consistent-hashing/virtual-nodes.png
https://patch-diff.githubusercontent.com/fe-project/system-design#data-replication
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-11
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-9
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-7
Apache Cassandrahttps://cassandra.apache.org
Amazon DynamoDBhttps://aws.amazon.com/dynamodb
https://patch-diff.githubusercontent.com/fe-project/system-design#database-federation
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-II/database-federation/database-federation.png
https://patch-diff.githubusercontent.com/fe-project/system-design#characteristics
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-12
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-10
https://patch-diff.githubusercontent.com/fe-project/system-design#n-tier-architecture
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/n-tier-architecture/n-tier-architecture.png
https://patch-diff.githubusercontent.com/fe-project/system-design#types-of-n-tier-architectures
https://patch-diff.githubusercontent.com/fe-project/system-design#3-tier-architecture
https://patch-diff.githubusercontent.com/fe-project/system-design#2-tier-architecture
https://patch-diff.githubusercontent.com/fe-project/system-design#single-tier-or-1-tier-architecture
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-13
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-11
https://patch-diff.githubusercontent.com/fe-project/system-design#message-brokers
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/message-brokers/message-broker.png
https://patch-diff.githubusercontent.com/fe-project/system-design#models
Point-to-Point messaginghttps://karanpratapsingh.com/courses/system-design/message-queues
Publish-subscribe messaginghttps://karanpratapsingh.com/courses/system-design/publish-subscribe
https://patch-diff.githubusercontent.com/fe-project/system-design#message-brokers-vs-event-streaming
https://patch-diff.githubusercontent.com/fe-project/system-design#message-brokers-vs-enterprise-service-bus-esb
Enterprise Service Bus (ESB)https://karanpratapsingh.com/courses/system-design/enterprise-service-bus
microservices architectureshttps://karanpratapsingh.com/courses/system-design/monoliths-microservices#microservices
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-8
NATShttps://nats.io
Apache Kafkahttps://kafka.apache.org
RabbitMQhttps://www.rabbitmq.com
ActiveMQhttps://activemq.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#message-queues
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/message-queues/message-queue.png
https://patch-diff.githubusercontent.com/fe-project/system-design#working
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-14
https://patch-diff.githubusercontent.com/fe-project/system-design#features-1
https://patch-diff.githubusercontent.com/fe-project/system-design#push-or-pull-delivery
https://patch-diff.githubusercontent.com/fe-project/system-design#fifo-first-in-first-out-queues
https://patch-diff.githubusercontent.com/fe-project/system-design#schedule-or-delay-delivery
https://patch-diff.githubusercontent.com/fe-project/system-design#at-least-once-delivery
https://patch-diff.githubusercontent.com/fe-project/system-design#exactly-once-delivery
https://patch-diff.githubusercontent.com/fe-project/system-design#dead-letter-queues
https://patch-diff.githubusercontent.com/fe-project/system-design#ordering
https://patch-diff.githubusercontent.com/fe-project/system-design#poison-pill-messages
https://patch-diff.githubusercontent.com/fe-project/system-design#security
https://patch-diff.githubusercontent.com/fe-project/system-design#task-queues
https://patch-diff.githubusercontent.com/fe-project/system-design#backpressure
exponential backoffhttps://en.wikipedia.org/wiki/Exponential_backoff
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-9
Amazon SQShttps://aws.amazon.com/sqs
RabbitMQhttps://www.rabbitmq.com
ActiveMQhttps://activemq.apache.org
ZeroMQhttps://zeromq.org
https://patch-diff.githubusercontent.com/fe-project/system-design#publish-subscribe
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/publish-subscribe/publish-subscribe.png
https://patch-diff.githubusercontent.com/fe-project/system-design#working-1
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-15
https://patch-diff.githubusercontent.com/fe-project/system-design#features-2
https://patch-diff.githubusercontent.com/fe-project/system-design#push-delivery
https://patch-diff.githubusercontent.com/fe-project/system-design#multiple-delivery-protocols
https://patch-diff.githubusercontent.com/fe-project/system-design#fanout
https://patch-diff.githubusercontent.com/fe-project/system-design#filtering
https://patch-diff.githubusercontent.com/fe-project/system-design#durability
https://patch-diff.githubusercontent.com/fe-project/system-design#security-1
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-10
Amazon SNShttps://aws.amazon.com/sns
Google Pub/Subhttps://cloud.google.com/pubsub
https://patch-diff.githubusercontent.com/fe-project/system-design#enterprise-service-bus-esb
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/enterprise-service-bus/enterprise-service-bus.png
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-16
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-12
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-11
Azure Service Bushttps://azure.microsoft.com/en-in/services/service-bus
IBM App Connecthttps://www.ibm.com/in-en/cloud/app-connect
Apache Camelhttps://camel.apache.org
Fuse ESBhttps://www.redhat.com/en/technologies/jboss-middleware/fuse
https://patch-diff.githubusercontent.com/fe-project/system-design#monoliths-and-microservices
https://patch-diff.githubusercontent.com/fe-project/system-design#monoliths
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/monoliths-microservices/monolith.png
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-17
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-13
https://patch-diff.githubusercontent.com/fe-project/system-design#modular-monoliths
https://patch-diff.githubusercontent.com/fe-project/system-design#microservices
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/monoliths-microservices/microservices.png
https://patch-diff.githubusercontent.com/fe-project/system-design#characteristics-1
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-18
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-14
https://patch-diff.githubusercontent.com/fe-project/system-design#best-practices
circuit breakerhttps://karanpratapsingh.com/courses/system-design/circuit-breaker
https://patch-diff.githubusercontent.com/fe-project/system-design#pitfalls
ACID instead of BASEhttps://karanpratapsingh.com/courses/system-design/acid-and-base-consistency-models
https://patch-diff.githubusercontent.com/fe-project/system-design#beware-of-the-distributed-monolith
https://patch-diff.githubusercontent.com/fe-project/system-design#microservices-vs-service-oriented-architecture-soa
https://patch-diff.githubusercontent.com/fe-project/system-design#why-you-dont-need-microservices
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/monoliths-microservices/architecture-range.png
https://patch-diff.githubusercontent.com/fe-project/system-design#event-driven-architecture-eda
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-an-event
https://patch-diff.githubusercontent.com/fe-project/system-design#components-1
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/event-driven-architecture/event-driven-architecture.png
https://patch-diff.githubusercontent.com/fe-project/system-design#patterns
Sagashttps://karanpratapsingh.com/courses/system-design/distributed-transactions#sagas
Publish-Subscribehttps://karanpratapsingh.com/courses/system-design/publish-subscribe
Event Sourcinghttps://karanpratapsingh.com/courses/system-design/event-sourcing
Command and Query Responsibility Segregation (CQRS)https://karanpratapsingh.com/courses/system-design/command-and-query-responsibility-segregation
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-19
https://patch-diff.githubusercontent.com/fe-project/system-design#challenges-2
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-1
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-12
NATShttps://nats.io
Apache Kafkahttps://kafka.apache.org
Amazon EventBridgehttps://aws.amazon.com/eventbridge
Amazon SNShttps://aws.amazon.com/sns
Google PubSubhttps://cloud.google.com/pubsub
https://patch-diff.githubusercontent.com/fe-project/system-design#event-sourcing
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/event-sourcing/event-sourcing.png
https://patch-diff.githubusercontent.com/fe-project/system-design#event-sourcing-vs-event-driven-architecture-eda
Event-driven Architecture (EDA)https://karanpratapsingh.com/courses/system-design/event-driven-architecture
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-20
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-15
https://patch-diff.githubusercontent.com/fe-project/system-design#command-and-query-responsibility-segregation-cqrs
Greg Younghttps://twitter.com/gregyoung
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/command-and-query-responsibility-segregation/command-and-query-responsibility-segregation.png
https://patch-diff.githubusercontent.com/fe-project/system-design#cqrs-with-event-sourcing
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-21
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-16
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-2
https://patch-diff.githubusercontent.com/fe-project/system-design#api-gateway
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/api-gateway/api-gateway.png
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-an-api-gateway
https://patch-diff.githubusercontent.com/fe-project/system-design#features-3
Service discoveryhttps://karanpratapsingh.com/courses/system-design/service-discovery
Reverse Proxyhttps://karanpratapsingh.com/courses/system-design/proxy#reverse-proxy
Cachinghttps://karanpratapsingh.com/courses/system-design/caching
Circuit breakinghttps://karanpratapsingh.com/courses/system-design/circuit-breaker
Load balancinghttps://karanpratapsingh.com/courses/system-design/load-balancing
Rate limitinghttps://karanpratapsingh.com/courses/system-design/rate-limiting
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-22
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-17
https://patch-diff.githubusercontent.com/fe-project/system-design#backend-for-frontend-bff-pattern
Sam Newmanhttps://samnewman.io
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/api-gateway/backend-for-frontend.png
GraphQLhttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc#graphql
https://patch-diff.githubusercontent.com/fe-project/system-design#when-to-use-this-pattern
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-13
Amazon API Gatewayhttps://aws.amazon.com/api-gateway
Apigee API Gatewayhttps://cloud.google.com/apigee
Azure API Gatewayhttps://azure.microsoft.com/en-in/services/api-management
Kong API Gatewayhttps://konghq.com/kong
https://patch-diff.githubusercontent.com/fe-project/system-design#rest-graphql-grpc
https://patch-diff.githubusercontent.com/fe-project/system-design#whats-an-api
https://patch-diff.githubusercontent.com/fe-project/system-design#rest
REST APIhttps://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm
Roy Fieldinghttps://roy.gbiv.com
https://patch-diff.githubusercontent.com/fe-project/system-design#concepts
HTTP response status codeshttps://en.wikipedia.org/wiki/List_of_HTTP_status_codes
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-23
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-18
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-3
https://patch-diff.githubusercontent.com/fe-project/system-design#example
Hypermedia as the Engine of Application State (HATEOAS)https://en.wikipedia.org/wiki/HATEOAS
https://patch-diff.githubusercontent.com/fe-project/system-design#graphql
GraphQLhttps://graphql.org
Facebookhttps://engineering.fb.com
https://patch-diff.githubusercontent.com/fe-project/system-design#concepts-1
mutationhttps://graphql.org/learn/queries/#mutations
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-24
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-19
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-4
https://patch-diff.githubusercontent.com/fe-project/system-design#example-1
graphql.orghttps://graphql.org
https://patch-diff.githubusercontent.com/fe-project/system-design#grpc
gRPChttps://grpc.io
Remote Procedure Call (RPC)https://en.wikipedia.org/wiki/Remote_procedure_call
https://patch-diff.githubusercontent.com/fe-project/system-design#concepts-2
Interface Definition Language (IDL)https://en.wikipedia.org/wiki/Interface_description_language
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-25
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-20
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-5
https://patch-diff.githubusercontent.com/fe-project/system-design#example-2
https://patch-diff.githubusercontent.com/fe-project/system-design#rest-vs-graphql-vs-grpc
https://patch-diff.githubusercontent.com/fe-project/system-design#which-api-technology-is-better
https://patch-diff.githubusercontent.com/fe-project/system-design#long-polling-websockets-server-sent-events-sse
https://patch-diff.githubusercontent.com/fe-project/system-design#long-polling
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/long-polling-websockets-server-sent-events/long-polling.png
https://patch-diff.githubusercontent.com/fe-project/system-design#working-2
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-26
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-21
https://patch-diff.githubusercontent.com/fe-project/system-design#websockets
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/long-polling-websockets-server-sent-events/websockets.png
https://patch-diff.githubusercontent.com/fe-project/system-design#working-3
HTTP Upgradehttps://en.wikipedia.org/wiki/HTTP/1.1_Upgrade_header
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-27
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-22
https://patch-diff.githubusercontent.com/fe-project/system-design#server-sent-events-sse
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-III/long-polling-websockets-server-sent-events/server-sent-events.png
https://patch-diff.githubusercontent.com/fe-project/system-design#working-4
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-28
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-23
https://patch-diff.githubusercontent.com/fe-project/system-design#geohashing-and-quadtrees
https://patch-diff.githubusercontent.com/fe-project/system-design#geohashing
geocodinghttps://en.wikipedia.org/wiki/Address_geocoding
Gustavo Niemeyerhttps://twitter.com/gniemeyer
https://patch-diff.githubusercontent.com/fe-project/system-design#how-does-geohashing-work
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/geohashing-and-quadtrees/geohashing.png
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-6
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-14
MySQLhttps://www.mysql.com
Redishttp://redis.io
Amazon DynamoDBhttps://aws.amazon.com/dynamodb
Google Cloud Firestorehttps://cloud.google.com/firestore
https://patch-diff.githubusercontent.com/fe-project/system-design#quadtrees
Octreeshttps://en.wikipedia.org/wiki/Octree
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/geohashing-and-quadtrees/quadtree.png
https://patch-diff.githubusercontent.com/fe-project/system-design#types-of-quadtrees
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-quadtrees
euclidean distancehttps://en.wikipedia.org/wiki/Euclidean_distance
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/geohashing-and-quadtrees/quadtree-subdivision.png
Hilbert curvehttps://en.wikipedia.org/wiki/Hilbert_curve
https://patch-diff.githubusercontent.com/fe-project/system-design#use-cases-7
https://patch-diff.githubusercontent.com/fe-project/system-design#circuit-breaker
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/circuit-breaker/circuit-breaker.png
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-circuit-breaking
https://patch-diff.githubusercontent.com/fe-project/system-design#states-1
https://patch-diff.githubusercontent.com/fe-project/system-design#closed
https://patch-diff.githubusercontent.com/fe-project/system-design#open
https://patch-diff.githubusercontent.com/fe-project/system-design#half-open
https://patch-diff.githubusercontent.com/fe-project/system-design#rate-limiting
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/rate-limiting/rate-limiting.png
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-rate-limiting
https://patch-diff.githubusercontent.com/fe-project/system-design#algorithms
https://patch-diff.githubusercontent.com/fe-project/system-design#leaky-bucket
https://patch-diff.githubusercontent.com/fe-project/system-design#token-bucket
https://patch-diff.githubusercontent.com/fe-project/system-design#fixed-window
https://patch-diff.githubusercontent.com/fe-project/system-design#sliding-log
https://patch-diff.githubusercontent.com/fe-project/system-design#sliding-window
https://patch-diff.githubusercontent.com/fe-project/system-design#rate-limiting-in-distributed-systems
https://patch-diff.githubusercontent.com/fe-project/system-design#inconsistencies
Redishttps://redis.io
https://patch-diff.githubusercontent.com/fe-project/system-design#race-conditions
https://patch-diff.githubusercontent.com/fe-project/system-design#service-discovery
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-service-discovery
https://patch-diff.githubusercontent.com/fe-project/system-design#implementations
https://patch-diff.githubusercontent.com/fe-project/system-design#client-side-discovery
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/service-discovery/client-side-service-discovery.png
https://patch-diff.githubusercontent.com/fe-project/system-design#server-side-discovery
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/service-discovery/server-side-service-discovery.png
https://patch-diff.githubusercontent.com/fe-project/system-design#service-registry
https://patch-diff.githubusercontent.com/fe-project/system-design#service-registration
https://patch-diff.githubusercontent.com/fe-project/system-design#self-registration
https://patch-diff.githubusercontent.com/fe-project/system-design#third-party-registration
https://patch-diff.githubusercontent.com/fe-project/system-design#service-mesh
Istiohttps://istio.io/latest/about/service-mesh
envoyhttps://www.envoyproxy.io
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-15
etcdhttps://etcd.io
Consulhttps://www.consul.io
Apache Thrifthttps://thrift.apache.org
Apache Zookeeperhttps://zookeeper.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#sla-slo-sli
https://patch-diff.githubusercontent.com/fe-project/system-design#why-are-they-important
https://patch-diff.githubusercontent.com/fe-project/system-design#sla
https://patch-diff.githubusercontent.com/fe-project/system-design#slo
https://patch-diff.githubusercontent.com/fe-project/system-design#sli
https://patch-diff.githubusercontent.com/fe-project/system-design#disaster-recovery
AWS Well-Architected Frameworkhttps://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/plan-for-disaster-recovery-dr.html
https://patch-diff.githubusercontent.com/fe-project/system-design#why-is-disaster-recovery-important
https://patch-diff.githubusercontent.com/fe-project/system-design#terms-1
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/disaster-recovery/disaster-recovery.png
https://patch-diff.githubusercontent.com/fe-project/system-design#rto
https://patch-diff.githubusercontent.com/fe-project/system-design#rpo
https://patch-diff.githubusercontent.com/fe-project/system-design#strategies
https://patch-diff.githubusercontent.com/fe-project/system-design#back-up
https://patch-diff.githubusercontent.com/fe-project/system-design#cold-site
https://patch-diff.githubusercontent.com/fe-project/system-design#hot-site
https://patch-diff.githubusercontent.com/fe-project/system-design#virtual-machines-vms-and-containers
https://patch-diff.githubusercontent.com/fe-project/system-design#virtual-machines-vm
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-a-hypervisor
https://patch-diff.githubusercontent.com/fe-project/system-design#why-use-a-virtual-machine
https://patch-diff.githubusercontent.com/fe-project/system-design#containers
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-containers
https://patch-diff.githubusercontent.com/fe-project/system-design#virtualization-vs-containerization
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/virtual-machines-and-containers/virtualization-vs-containerization.png
https://patch-diff.githubusercontent.com/fe-project/system-design#oauth-20-and-openid-connect-oidc
https://patch-diff.githubusercontent.com/fe-project/system-design#oauth-20
https://patch-diff.githubusercontent.com/fe-project/system-design#concepts-3
https://patch-diff.githubusercontent.com/fe-project/system-design#how-does-oauth-20-work
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/oauth2-and-openid-connect/oauth2.png
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-24
https://patch-diff.githubusercontent.com/fe-project/system-design#openid-connect
https://patch-diff.githubusercontent.com/fe-project/system-design#concepts-4
https://patch-diff.githubusercontent.com/fe-project/system-design#single-sign-on-sso
https://patch-diff.githubusercontent.com/fe-project/system-design#components-2
https://patch-diff.githubusercontent.com/fe-project/system-design#identity-provider-idp
https://patch-diff.githubusercontent.com/fe-project/system-design#service-provider
https://patch-diff.githubusercontent.com/fe-project/system-design#identity-broker
https://patch-diff.githubusercontent.com/fe-project/system-design#saml
https://patch-diff.githubusercontent.com/fe-project/system-design#how-does-sso-work
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/single-sign-on/sso.png
https://patch-diff.githubusercontent.com/fe-project/system-design#saml-vs-oauth-20-and-openid-connect-oidc
https://patch-diff.githubusercontent.com/fe-project/system-design#advantages-29
https://patch-diff.githubusercontent.com/fe-project/system-design#disadvantages-25
https://patch-diff.githubusercontent.com/fe-project/system-design#examples-16
Oktahttps://www.okta.com
Googlehttps://cloud.google.com/architecture/identity/single-sign-on
Auth0https://auth0.com
OneLoginhttps://www.onelogin.com
https://patch-diff.githubusercontent.com/fe-project/system-design#ssl-tls-mtls
https://patch-diff.githubusercontent.com/fe-project/system-design#ssl
https://patch-diff.githubusercontent.com/fe-project/system-design#why-is-it-called-an-ssl-certificate-if-it-is-deprecated
https://patch-diff.githubusercontent.com/fe-project/system-design#why-was-ssl-so-important
https://patch-diff.githubusercontent.com/fe-project/system-design#tls
https://patch-diff.githubusercontent.com/fe-project/system-design#mtls
https://patch-diff.githubusercontent.com/fe-project/system-design#why-use-mtls
zero trust security modelhttps://en.wikipedia.org/wiki/Zero_trust_security_model
https://patch-diff.githubusercontent.com/fe-project/system-design#system-design-interviews
https://patch-diff.githubusercontent.com/fe-project/system-design#requirements-clarifications
https://patch-diff.githubusercontent.com/fe-project/system-design#functional-requirements
https://patch-diff.githubusercontent.com/fe-project/system-design#non-functional-requirements
https://patch-diff.githubusercontent.com/fe-project/system-design#extended-requirements
https://patch-diff.githubusercontent.com/fe-project/system-design#estimation-and-constraints
https://patch-diff.githubusercontent.com/fe-project/system-design#data-model-design
https://patch-diff.githubusercontent.com/fe-project/system-design#api-design
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-component-design
https://patch-diff.githubusercontent.com/fe-project/system-design#detailed-design
https://patch-diff.githubusercontent.com/fe-project/system-design#identify-and-resolve-bottlenecks
https://patch-diff.githubusercontent.com/fe-project/system-design#url-shortener
Bitlyhttps://bitly.com
TinyURLhttps://tinyurl.com/app
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-a-url-shortener
https://karanpratapsingh.com/courses/system-design/url-shortenerhttps://karanpratapsingh.com/courses/system-design/url-shortener
https://bit.ly/3I71d3ohttps://bit.ly/3I71d3o
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-a-url-shortener
https://patch-diff.githubusercontent.com/fe-project/system-design#requirements
https://patch-diff.githubusercontent.com/fe-project/system-design#functional-requirements-1
https://patch-diff.githubusercontent.com/fe-project/system-design#non-functional-requirements-1
https://patch-diff.githubusercontent.com/fe-project/system-design#extended-requirements-1
https://patch-diff.githubusercontent.com/fe-project/system-design#estimation-and-constraints-1
https://patch-diff.githubusercontent.com/fe-project/system-design#traffic
https://patch-diff.githubusercontent.com/fe-project/system-design#bandwidth
https://patch-diff.githubusercontent.com/fe-project/system-design#storage-2
https://patch-diff.githubusercontent.com/fe-project/system-design#cache
Pareto principlehttps://en.wikipedia.org/wiki/Pareto_principle
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-estimate
https://patch-diff.githubusercontent.com/fe-project/system-design#data-model-design-1
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/url-shortener/url-shortener-datamodel.png
indexhttps://karanpratapsingh.com/courses/system-design/indexes
https://patch-diff.githubusercontent.com/fe-project/system-design#what-kind-of-database-should-we-use
Amazon DynamoDBhttps://aws.amazon.com/dynamodb
Apache Cassandrahttps://cassandra.apache.org/_/index.html
MongoDBhttps://www.mongodb.com
Azure SQL Databasehttps://azure.microsoft.com/en-in/products/azure-sql/database
Amazon RDShttps://aws.amazon.com/rds
SQL vs NoSQLhttps://karanpratapsingh.com/courses/system-design/sql-vs-nosql-databases
https://patch-diff.githubusercontent.com/fe-project/system-design#api-design-1
https://patch-diff.githubusercontent.com/fe-project/system-design#create-url
https://patch-diff.githubusercontent.com/fe-project/system-design#get-url
https://patch-diff.githubusercontent.com/fe-project/system-design#delete-url
https://patch-diff.githubusercontent.com/fe-project/system-design#why-do-we-need-an-api-key
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-design
https://patch-diff.githubusercontent.com/fe-project/system-design#url-encoding
Base62https://en.wikipedia.org/wiki/Base62
MD5 message-digest algorithmhttps://en.wikipedia.org/wiki/MD5
Zookeeperhttps://zookeeper.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#key-generation-service-kgs
https://patch-diff.githubusercontent.com/fe-project/system-design#caching-1
cachinghttps://karanpratapsingh.com/courses/system-design/caching
Redishttps://redis.io
Memcachedhttps://memcached.org
cachinghttps://karanpratapsingh.com/courses/system-design/caching
https://patch-diff.githubusercontent.com/fe-project/system-design#design
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/url-shortener/url-shortener-basic-design.png
https://patch-diff.githubusercontent.com/fe-project/system-design#detailed-design-1
https://patch-diff.githubusercontent.com/fe-project/system-design#data-partitioning-1
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent Hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
https://patch-diff.githubusercontent.com/fe-project/system-design#database-cleanup
cron jobhttps://en.wikipedia.org/wiki/Cron
https://patch-diff.githubusercontent.com/fe-project/system-design#cache-1
cachinghttps://karanpratapsingh.com/courses/system-design/caching
Redishttps://redis.io
Memcachedhttps://memcached.org
Least Recently Used (LRU)https://en.wikipedia.org/wiki/Cache_replacement_policies#Least_recently_used_(LRU)
https://patch-diff.githubusercontent.com/fe-project/system-design#metrics-and-analytics
https://patch-diff.githubusercontent.com/fe-project/system-design#security-2
API Gatewayhttps://karanpratapsingh.com/courses/system-design/api-gateway
https://patch-diff.githubusercontent.com/fe-project/system-design#identify-and-resolve-bottlenecks-1
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/url-shortener/url-shortener-advanced-design.png
load balancershttps://karanpratapsingh.com/courses/system-design/load-balancing
https://patch-diff.githubusercontent.com/fe-project/system-design#whatsapp
WhatsApphttps://whatsapp.com
WhatsApphttps://www.whatsapp.com
Facebook Messengerhttps://www.messenger.com
WeChathttps://www.wechat.com
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-whatsapp
https://patch-diff.githubusercontent.com/fe-project/system-design#requirements-1
https://patch-diff.githubusercontent.com/fe-project/system-design#functional-requirements-2
https://patch-diff.githubusercontent.com/fe-project/system-design#non-functional-requirements-2
https://patch-diff.githubusercontent.com/fe-project/system-design#extended-requirements-2
https://patch-diff.githubusercontent.com/fe-project/system-design#estimation-and-constraints-2
https://patch-diff.githubusercontent.com/fe-project/system-design#traffic-1
https://patch-diff.githubusercontent.com/fe-project/system-design#storage-3
https://patch-diff.githubusercontent.com/fe-project/system-design#bandwidth-1
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-estimate-1
https://patch-diff.githubusercontent.com/fe-project/system-design#data-model-design-2
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/whatsapp/whatsapp-datamodel.png
https://patch-diff.githubusercontent.com/fe-project/system-design#what-kind-of-database-should-we-use-1
PostgreSQLhttps://www.postgresql.org
Apache Cassandrahttps://cassandra.apache.org/_/index.html
https://patch-diff.githubusercontent.com/fe-project/system-design#api-design-2
https://patch-diff.githubusercontent.com/fe-project/system-design#get-all-chats-or-groups
https://patch-diff.githubusercontent.com/fe-project/system-design#get-messages
https://patch-diff.githubusercontent.com/fe-project/system-design#send-message
https://patch-diff.githubusercontent.com/fe-project/system-design#join-or-leave-a-group
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-design-1
https://patch-diff.githubusercontent.com/fe-project/system-design#architecture
microservices architecturehttps://karanpratapsingh.com/courses/system-design/monoliths-microservices#microservices
gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc#grpc
Service discoveryhttps://karanpratapsingh.com/courses/system-design/service-discovery
REST, GraphQL, gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc
https://patch-diff.githubusercontent.com/fe-project/system-design#real-time-messaging
Long pollinghttps://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#long-polling
WebSocketshttps://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#websockets
Server-Sent Events (SSE)https://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#server-sent-events-sse
WebSocketshttps://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#websockets
Server-Sent Events (SSE)https://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#server-sent-events-sse
Long polling, WebSockets, Server-Sent Events (SSE)https://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events
https://patch-diff.githubusercontent.com/fe-project/system-design#last-seen
heartbeathttps://en.wikipedia.org/wiki/Heartbeat_(computing)
Redishttps://redis.io
Memcachedhttps://memcached.org
https://patch-diff.githubusercontent.com/fe-project/system-design#notifications
message queuehttps://karanpratapsingh.com/courses/system-design/message-queues
Firebase Cloud Messaging (FCM)https://firebase.google.com/docs/cloud-messaging
Apple Push Notification Service (APNS)https://developer.apple.com/documentation/usernotifications
publish-subscribehttps://karanpratapsingh.com/courses/system-design/publish-subscribe
Amazon SQShttps://aws.amazon.com/sqs
RabbitMQhttps://www.rabbitmq.com
https://patch-diff.githubusercontent.com/fe-project/system-design#read-receipts
Acknowledgment (ACK)https://en.wikipedia.org/wiki/Acknowledgement_(data_networks)
https://patch-diff.githubusercontent.com/fe-project/system-design#design-1
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/whatsapp/whatsapp-basic-design.png
https://patch-diff.githubusercontent.com/fe-project/system-design#detailed-design-2
https://patch-diff.githubusercontent.com/fe-project/system-design#data-partitioning-2
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent Hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
https://patch-diff.githubusercontent.com/fe-project/system-design#caching-2
Redishttps://redis.io
Memcachedhttps://memcached.org
Least Recently Used (LRU)https://en.wikipedia.org/wiki/Cache_replacement_policies#Least_recently_used_(LRU)
Cachinghttps://karanpratapsingh.com/courses/system-design/caching
https://patch-diff.githubusercontent.com/fe-project/system-design#media-access-and-storage
object storagehttps://karanpratapsingh.com/courses/system-design/storage#object-storage
HDFShttps://karanpratapsingh.com/courses/system-design/storage#hdfs
GlusterFShttps://www.gluster.org
Amazon S3https://aws.amazon.com/s3
Azure Blob Storagehttps://azure.microsoft.com/en-in/services/storage/blobs
Google Cloud Storagehttps://cloud.google.com/storage
https://patch-diff.githubusercontent.com/fe-project/system-design#content-delivery-network-cdn-1
Content Delivery Network (CDN)https://karanpratapsingh.com/courses/system-design/content-delivery-network
Amazon CloudFronthttps://aws.amazon.com/cloudfront
Cloudflare CDNhttps://www.cloudflare.com/cdn
https://patch-diff.githubusercontent.com/fe-project/system-design#api-gateway-1
API Gatewayhttps://karanpratapsingh.com/courses/system-design/api-gateway
Amazon API Gatewayhttps://aws.amazon.com/api-gateway
Azure API Gatewayhttps://azure.microsoft.com/en-in/services/api-management
https://patch-diff.githubusercontent.com/fe-project/system-design#identify-and-resolve-bottlenecks-2
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/whatsapp/whatsapp-advanced-design.png
load balancershttps://karanpratapsingh.com/courses/system-design/load-balancing
message brokerhttps://karanpratapsingh.com/courses/system-design/message-brokers
Apache Kafkahttps://kafka.apache.org
NATShttps://nats.io
https://patch-diff.githubusercontent.com/fe-project/system-design#twitter
Twitterhttps://twitter.com
Facebookhttps://facebook.com
Instagramhttps://instagram.com
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-twitter
https://patch-diff.githubusercontent.com/fe-project/system-design#requirements-2
https://patch-diff.githubusercontent.com/fe-project/system-design#functional-requirements-3
https://patch-diff.githubusercontent.com/fe-project/system-design#non-functional-requirements-3
https://patch-diff.githubusercontent.com/fe-project/system-design#extended-requirements-3
https://patch-diff.githubusercontent.com/fe-project/system-design#estimation-and-constraints-3
https://patch-diff.githubusercontent.com/fe-project/system-design#traffic-2
https://patch-diff.githubusercontent.com/fe-project/system-design#storage-4
https://patch-diff.githubusercontent.com/fe-project/system-design#bandwidth-2
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-estimate-2
https://patch-diff.githubusercontent.com/fe-project/system-design#data-model-design-3
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/twitter/twitter-datamodel.png
followeeshttps://en.wiktionary.org/wiki/followee
https://patch-diff.githubusercontent.com/fe-project/system-design#what-kind-of-database-should-we-use-2
PostgreSQLhttps://www.postgresql.org
Apache Cassandrahttps://cassandra.apache.org/_/index.html
https://patch-diff.githubusercontent.com/fe-project/system-design#api-design-3
https://patch-diff.githubusercontent.com/fe-project/system-design#post-a-tweet
https://patch-diff.githubusercontent.com/fe-project/system-design#follow-or-unfollow-a-user
https://patch-diff.githubusercontent.com/fe-project/system-design#get-newsfeed
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-design-2
https://patch-diff.githubusercontent.com/fe-project/system-design#architecture-1
microservices architecturehttps://karanpratapsingh.com/courses/system-design/monoliths-microservices#microservices
gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc#grpc
Service discoveryhttps://karanpratapsingh.com/courses/system-design/service-discovery
REST, GraphQL, gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc
https://patch-diff.githubusercontent.com/fe-project/system-design#newsfeed
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/twitter/newsfeed-pull-model.png
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/twitter/newsfeed-push-model.png
https://patch-diff.githubusercontent.com/fe-project/system-design#ranking-algorithm
EdgeRankhttps://en.wikipedia.org/wiki/EdgeRank
https://patch-diff.githubusercontent.com/fe-project/system-design#retweets
https://patch-diff.githubusercontent.com/fe-project/system-design#search
Elasticsearchhttps://www.elastic.co
Elasticsearchhttps://www.elastic.co
Apache Lucenehttps://lucene.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#notifications-1
Apache Kafkahttps://kafka.apache.org
Firebase Cloud Messaging (FCM)https://firebase.google.com/docs/cloud-messaging
Apple Push Notification Service (APNS)https://developer.apple.com/documentation/usernotifications
WhatsApphttps://karanpratapsingh.com/courses/system-design/whatsapp#notifications
https://patch-diff.githubusercontent.com/fe-project/system-design#detailed-design-3
https://patch-diff.githubusercontent.com/fe-project/system-design#data-partitioning-3
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent Hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
https://patch-diff.githubusercontent.com/fe-project/system-design#mutual-friends
Neo4jhttps://neo4j.com
ArangoDBhttps://www.arangodb.com
https://patch-diff.githubusercontent.com/fe-project/system-design#metrics-and-analytics-1
Apache Kafkahttps://kafka.apache.org
Apache Sparkhttps://spark.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#caching-3
Redishttps://redis.io
Memcachedhttps://memcached.org
Least Recently Used (LRU)https://en.wikipedia.org/wiki/Cache_replacement_policies#Least_recently_used_(LRU)
Cachinghttps://karanpratapsingh.com/courses/system-design/caching
https://patch-diff.githubusercontent.com/fe-project/system-design#media-access-and-storage-1
object storagehttps://karanpratapsingh.com/courses/system-design/storage#object-storage
HDFShttps://karanpratapsingh.com/courses/system-design/storage#hdfs
GlusterFShttps://www.gluster.org
https://patch-diff.githubusercontent.com/fe-project/system-design#content-delivery-network-cdn-2
Content Delivery Network (CDN)https://karanpratapsingh.com/courses/system-design/content-delivery-network
Amazon CloudFronthttps://aws.amazon.com/cloudfront
Cloudflare CDNhttps://www.cloudflare.com/cdn
https://patch-diff.githubusercontent.com/fe-project/system-design#identify-and-resolve-bottlenecks-3
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/twitter/twitter-advanced-design.png
load balancershttps://karanpratapsingh.com/courses/system-design/load-balancing
message brokerhttps://karanpratapsingh.com/courses/system-design/message-brokers
Apache Kafkahttps://kafka.apache.org
NATShttps://nats.io
https://patch-diff.githubusercontent.com/fe-project/system-design#netflix
Netflixhttps://netflix.com
Amazon Prime Videohttps://www.primevideo.com
Disney Plushttps://www.disneyplus.com
Huluhttps://www.hulu.com
Youtubehttps://youtube.com
Vimeohttps://vimeo.com
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-netflix
https://patch-diff.githubusercontent.com/fe-project/system-design#requirements-3
https://patch-diff.githubusercontent.com/fe-project/system-design#functional-requirements-4
https://patch-diff.githubusercontent.com/fe-project/system-design#non-functional-requirements-4
https://patch-diff.githubusercontent.com/fe-project/system-design#extended-requirements-4
geo-blockedhttps://en.wikipedia.org/wiki/Geo-blocking
https://patch-diff.githubusercontent.com/fe-project/system-design#estimation-and-constraints-4
https://patch-diff.githubusercontent.com/fe-project/system-design#traffic-3
https://patch-diff.githubusercontent.com/fe-project/system-design#storage-5
https://patch-diff.githubusercontent.com/fe-project/system-design#bandwidth-3
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-estimate-3
https://patch-diff.githubusercontent.com/fe-project/system-design#data-model-design-4
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/netflix/netflix-datamodel.png
https://patch-diff.githubusercontent.com/fe-project/system-design#what-kind-of-database-should-we-use-3
PostgreSQLhttps://www.postgresql.org
Apache Cassandrahttps://cassandra.apache.org/_/index.html
https://patch-diff.githubusercontent.com/fe-project/system-design#api-design-4
https://patch-diff.githubusercontent.com/fe-project/system-design#upload-a-video
https://patch-diff.githubusercontent.com/fe-project/system-design#streaming-a-video
codechttps://en.wikipedia.org/wiki/Video_codec
Resolutionhttps://en.wikipedia.org/wiki/Display_resolution
https://patch-diff.githubusercontent.com/fe-project/system-design#search-for-a-video
https://patch-diff.githubusercontent.com/fe-project/system-design#add-a-comment
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-design-3
https://patch-diff.githubusercontent.com/fe-project/system-design#architecture-2
microservices architecturehttps://karanpratapsingh.com/courses/system-design/monoliths-microservices#microservices
gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc#grpc
Service discoveryhttps://karanpratapsingh.com/courses/system-design/service-discovery
REST, GraphQL, gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc
https://patch-diff.githubusercontent.com/fe-project/system-design#video-processing
message queuehttps://karanpratapsingh.com/courses/system-design/message-queues
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/netflix/video-processing-pipeline.png
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/netflix/file-chunking.png
content ratinghttps://en.wikipedia.org/wiki/Motion_picture_content_rating_system
dead-letter queue (DLQ)https://karanpratapsingh.com/courses/system-design/message-queues#dead-letter-queues
Transcodinghttps://en.wikipedia.org/wiki/Transcoding
codecshttps://en.wikipedia.org/wiki/Video_codec
FFmpeghttps://ffmpeg.org
AWS Elemental MediaConverthttps://aws.amazon.com/mediaconvert
HDFShttps://karanpratapsingh.com/courses/system-design/storage#hdfs
GlusterFShttps://www.gluster.org
object storagehttps://karanpratapsingh.com/courses/system-design/storage#object-storage
Amazon S3https://aws.amazon.com/s3
message queuehttps://karanpratapsingh.com/courses/system-design/message-queues
Amazon SQShttps://aws.amazon.com/sqs
RabbitMQhttps://www.rabbitmq.com
https://patch-diff.githubusercontent.com/fe-project/system-design#video-streaming
Content Delivery Network (CDN)https://karanpratapsingh.com/courses/system-design/content-delivery-network
Open Connecthttps://openconnect.netflix.com
Content Delivery Network (CDN)https://karanpratapsingh.com/courses/system-design/content-delivery-network
Adaptive bitrate streaminghttps://en.wikipedia.org/wiki/Adaptive_bitrate_streaming
HTTP Live Streaming (HLS)https://en.wikipedia.org/wiki/HTTP_Live_Streaming
https://patch-diff.githubusercontent.com/fe-project/system-design#searching
Elasticsearchhttps://www.elastic.co
Elasticsearchhttps://www.elastic.co
Apache Lucenehttps://lucene.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#sharing
URL Shortenerhttps://karanpratapsingh.com/courses/system-design/url-shortener
https://patch-diff.githubusercontent.com/fe-project/system-design#detailed-design-4
https://patch-diff.githubusercontent.com/fe-project/system-design#data-partitioning-4
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent Hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
https://patch-diff.githubusercontent.com/fe-project/system-design#geo-blocking
Geo-blockinghttps://en.wikipedia.org/wiki/Geo-blocking
IPhttps://karanpratapsingh.com/courses/system-design/ip
Amazon CloudFronthttps://aws.amazon.com/cloudfront
geolocation routing policyhttps://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geo.html
Amazon Route53https://aws.amazon.com/route53
https://patch-diff.githubusercontent.com/fe-project/system-design#recommendations
Collaborative Filteringhttps://en.wikipedia.org/wiki/Collaborative_filtering
Netflix recommendation researchhttps://research.netflix.com/research-area/recommendations
https://patch-diff.githubusercontent.com/fe-project/system-design#metrics-and-analytics-2
Apache Sparkhttps://spark.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#caching-4
Redishttps://redis.io
Memcachedhttps://memcached.org
Least Recently Used (LRU)https://en.wikipedia.org/wiki/Cache_replacement_policies#Least_recently_used_(LRU)
Cachinghttps://karanpratapsingh.com/courses/system-design/caching
https://patch-diff.githubusercontent.com/fe-project/system-design#media-streaming-and-storage
HDFShttps://karanpratapsingh.com/courses/system-design/storage#hdfs
GlusterFShttps://www.gluster.org
object storagehttps://karanpratapsingh.com/courses/system-design/storage#object-storage
Amazon S3https://aws.amazon.com/s3
https://patch-diff.githubusercontent.com/fe-project/system-design#content-delivery-network-cdn-3
Content Delivery Network (CDN)https://karanpratapsingh.com/courses/system-design/content-delivery-network
Amazon CloudFronthttps://aws.amazon.com/cloudfront
Cloudflare CDNhttps://www.cloudflare.com/cdn
https://patch-diff.githubusercontent.com/fe-project/system-design#identify-and-resolve-bottlenecks-4
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/netflix/netflix-advanced-design.png
load balancershttps://karanpratapsingh.com/courses/system-design/load-balancing
https://patch-diff.githubusercontent.com/fe-project/system-design#uber
Uberhttps://uber.com
Lyfthttps://www.lyft.com
OLA Cabshttps://www.olacabs.com
https://patch-diff.githubusercontent.com/fe-project/system-design#what-is-uber
https://patch-diff.githubusercontent.com/fe-project/system-design#requirements-4
https://patch-diff.githubusercontent.com/fe-project/system-design#functional-requirements-5
https://patch-diff.githubusercontent.com/fe-project/system-design#non-functional-requirements-5
https://patch-diff.githubusercontent.com/fe-project/system-design#extended-requirements-5
https://patch-diff.githubusercontent.com/fe-project/system-design#estimation-and-constraints-5
https://patch-diff.githubusercontent.com/fe-project/system-design#traffic-4
https://patch-diff.githubusercontent.com/fe-project/system-design#storage-6
https://patch-diff.githubusercontent.com/fe-project/system-design#bandwidth-4
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-estimate-4
https://patch-diff.githubusercontent.com/fe-project/system-design#data-model-design-5
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/uber/uber-datamodel.png
https://patch-diff.githubusercontent.com/fe-project/system-design#what-kind-of-database-should-we-use-4
PostgreSQLhttps://www.postgresql.org
Apache Cassandrahttps://cassandra.apache.org/_/index.html
https://patch-diff.githubusercontent.com/fe-project/system-design#api-design-5
https://patch-diff.githubusercontent.com/fe-project/system-design#request-a-ride
https://patch-diff.githubusercontent.com/fe-project/system-design#cancel-the-ride
https://patch-diff.githubusercontent.com/fe-project/system-design#accept-or-deny-the-ride
https://patch-diff.githubusercontent.com/fe-project/system-design#start-or-end-the-trip
https://patch-diff.githubusercontent.com/fe-project/system-design#rate-the-trip
https://patch-diff.githubusercontent.com/fe-project/system-design#high-level-design-4
https://patch-diff.githubusercontent.com/fe-project/system-design#architecture-3
microservices architecturehttps://karanpratapsingh.com/courses/system-design/monoliths-microservices#microservices
gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc#grpc
Service discoveryhttps://karanpratapsingh.com/courses/system-design/service-discovery
REST, GraphQL, gRPChttps://karanpratapsingh.com/courses/system-design/rest-graphql-grpc
https://patch-diff.githubusercontent.com/fe-project/system-design#how-is-the-service-expected-to-work
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/uber/uber-working.png
https://patch-diff.githubusercontent.com/fe-project/system-design#location-tracking
Long pollinghttps://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#long-polling
WebSocketshttps://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#websockets
Server-Sent Events (SSE)https://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#server-sent-events-sse
WebSocketshttps://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#websockets
Server-Sent Events (SSE)https://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events#server-sent-events-sse
Long polling, WebSockets, Server-Sent Events (SSE)https://karanpratapsingh.com/courses/system-design/long-polling-websockets-server-sent-events
https://patch-diff.githubusercontent.com/fe-project/system-design#ride-matching
PostgreSQLhttps://www.postgresql.org
MySQLhttps://www.mysql.com
Geohashinghttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/courses/sytem-design/geohashing-and-quadtrees#geohashing
geocodinghttps://en.wikipedia.org/wiki/Address_geocoding
Gustavo Niemeyerhttps://twitter.com/gniemeyer
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/geohashing-and-quadtrees/geohashing.png
Quadtreehttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/courses/sytem-design/geohashing-and-quadtrees#quadtrees
Octreeshttps://en.wikipedia.org/wiki/Octree
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/geohashing-and-quadtrees/quadtree.png
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-IV/geohashing-and-quadtrees/quadtree-subdivision.png
Quadtreehttps://patch-diff.githubusercontent.com/fe-project/system-design/blob/main/courses/sytem-design/geohashing-and-quadtrees#quadtrees
Redishttps://redis.io
Hilbert curvehttps://en.wikipedia.org/wiki/Hilbert_curve
Mutexhttps://en.wikipedia.org/wiki/Lock_(computer_science)
Transactionshttps://karanpratapsingh.com/courses/system-design/transactions
Distributed Transactionshttps://karanpratapsingh.com/courses/system-design/distributed-transactions
surge pricing workshttps://www.uber.com/us/en/drive/driver-app/how-surge-works
https://patch-diff.githubusercontent.com/fe-project/system-design#payments
Stripehttps://stripe.com
PayPalhttps://www.paypal.com
webhookhttps://en.wikipedia.org/wiki/Webhook
https://patch-diff.githubusercontent.com/fe-project/system-design#notifications-2
Apache Kafkahttps://kafka.apache.org
Firebase Cloud Messaging (FCM)https://firebase.google.com/docs/cloud-messaging
Apple Push Notification Service (APNS)https://developer.apple.com/documentation/usernotifications
WhatsApphttps://karanpratapsingh.com/courses/system-design/whatsapp#notifications
https://patch-diff.githubusercontent.com/fe-project/system-design#detailed-design-5
https://patch-diff.githubusercontent.com/fe-project/system-design#data-partitioning-5
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
partition schemeshttps://karanpratapsingh.com/courses/system-design/sharding#partitioning-criteria
Consistent hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
Shardinghttps://karanpratapsingh.com/courses/system-design/sharding
Consistent Hashinghttps://karanpratapsingh.com/courses/system-design/consistent-hashing
https://patch-diff.githubusercontent.com/fe-project/system-design#metrics-and-analytics-3
Apache Sparkhttps://spark.apache.org
https://patch-diff.githubusercontent.com/fe-project/system-design#caching-5
Redishttps://redis.io
Memcachedhttps://memcached.org
Least Recently Used (LRU)https://en.wikipedia.org/wiki/Cache_replacement_policies#Least_recently_used_(LRU)
Cachinghttps://karanpratapsingh.com/courses/system-design/caching
https://patch-diff.githubusercontent.com/fe-project/system-design#identify-and-resolve-bottlenecks-5
https://raw.githubusercontent.com/karanpratapsingh/portfolio/master/public/static/courses/system-design/chapter-V/uber/uber-advanced-design.png
load balancershttps://karanpratapsingh.com/courses/system-design/load-balancing
message brokerhttps://karanpratapsingh.com/courses/system-design/message-brokers
Apache Kafkahttps://kafka.apache.org
NATShttps://nats.io
https://patch-diff.githubusercontent.com/fe-project/system-design#next-steps
Distributed Systemshttps://www.youtube.com/watch?v=UEAMfLPZZhE&list=PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB
System Design Interview: An Insider's Guidehttps://www.amazon.in/System-Design-Interview-insiders-Second/dp/B08CMF2CQF
Microserviceshttps://microservices.io
Serverless computinghttps://en.wikipedia.org/wiki/Serverless_computing
Kuberneteshttps://kubernetes.io
Microsoft Engineeringhttps://engineering.microsoft.com
Google Research Bloghttp://googleresearch.blogspot.com
Netflix Tech Bloghttp://techblog.netflix.com
AWS Bloghttps://aws.amazon.com/blogs/aws
Facebook Engineeringhttps://www.facebook.com/Engineering
Uber Engineering Bloghttp://eng.uber.com
Airbnb Engineeringhttp://nerds.airbnb.com
GitHub Engineering Bloghttps://github.blog/category/engineering
Intel Software Bloghttps://software.intel.com/en-us/blogs
LinkedIn Engineeringhttp://engineering.linkedin.com/blog
Paypal Developer Bloghttps://medium.com/paypal-engineering
Twitter Engineeringhttps://blog.twitter.com/engineering
https://patch-diff.githubusercontent.com/fe-project/system-design#references
Cloudflare learning centerhttps://www.cloudflare.com/learning
IBM Blogshttps://www.ibm.com/blogs
Fastly Blogshttps://www.fastly.com/blog
NS1 Blogshttps://ns1.com/blog
Grokking the System Design Interviewhttps://www.educative.io/courses/grokking-the-system-design-interview
System Design Primerhttps://github.com/donnemartin/system-design-primer
AWS Blogshttps://aws.amazon.com/blogs
Martin Fowlerhttps://martinfowler.com
PagerDuty resourceshttps://www.pagerduty.com/resources
VMWare Blogshttps://blogs.vmware.com/learning
Excalidrawhttps://excalidraw.com
herehttps://github.com/karanpratapsingh/system-design/tree/main/diagrams
www.karanpratapsingh.com/courses/system-designhttps://www.karanpratapsingh.com/courses/system-design
Readme https://patch-diff.githubusercontent.com/fe-project/system-design#readme-ov-file
GPL-3.0 license https://patch-diff.githubusercontent.com/fe-project/system-design#GPL-3.0-1-ov-file
Please reload this pagehttps://patch-diff.githubusercontent.com/fe-project/system-design
Activityhttps://patch-diff.githubusercontent.com/fe-project/system-design/activity
Custom propertieshttps://patch-diff.githubusercontent.com/fe-project/system-design/custom-properties
0 starshttps://patch-diff.githubusercontent.com/fe-project/system-design/stargazers
0 watchinghttps://patch-diff.githubusercontent.com/fe-project/system-design/watchers
0 forkshttps://patch-diff.githubusercontent.com/fe-project/system-design/forks
Report repository https://patch-diff.githubusercontent.com/contact/report-content?content_url=https%3A%2F%2Fgithub.com%2Ffe-project%2Fsystem-design&report=fe-project+%28user%29
Releaseshttps://patch-diff.githubusercontent.com/fe-project/system-design/releases
Packages 0https://patch-diff.githubusercontent.com/orgs/fe-project/packages?repo_name=system-design
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.