Skip to content

Latest commit

 

History

History
20 lines (17 loc) · 4.17 KB

README.md

File metadata and controls

20 lines (17 loc) · 4.17 KB

High-Level Design

This is my collection of high-level designs of software architectures which I have worked on in my orgs or explored otherwise!

Table of Contents

Index Topic Link Status Articles/Videos
0 Networking+Protocols basics ✔️ TCP vs UDP
OSI, TCP/IP
TLS Playlist
WebRTC vs HLS & specific use cases
gRPC via HTTPS2
QUIC/HTTP3
Fixing backend postgres connection leaks
Connection Pools
1 Kubernetes Architecture k8s
2 Kubernetes Sidecar Architecture
3 Kafka Architecture kafka
producer-consumer
Lessons learned form Kafka in production
Transactional Outbox Pattern
Confluent Kafka 101
Exactly once semantics with Matthias J. Sax
4 Load Balancer lb Todo Envoy
5 Telegram Link
6 Streaming Service + Live Streaming e.g. HotStar Link
7 Distributed Concurrency 1. a) Distributed Concurrency: OCC PCC Part1
2. Using CAS style atomic operation if your DB supports it. Systems like Cassandra supports it.
3. Serializing the request using queues that makes sure only one of those requests would succeed. CockroachDB uses similar mechanism internally that lets only one transaction win.
4. Using a distributed locking system like Redis, but this is over engineering for most cases.
Udemy Hussein Nasser
8 Payment System:

• Internal payment system of any e-commerce
• PSP e.g Razorpay or juspay
• UPI
• Bank Payment Settlement
Internal Payment System of Company Todo Possible Interview Question
9 Software Architecture Patterns: Application Code Read & Make Notes Todo
10 Scaling for Millions of Request per second Todo Understand and research for multiple scenarios and common use cases for interviews
11 Design Search System

• Real Time Recommendation Based Search & Homepage catalogue

• TypeAhead Search System Design

• IM Search Design
Real Time Recommendation Based Search & Homepage catalogue - Notes In-Progress