🗄️
Backend Fundamentals
Databases, concurrency, and networking — the bedrock of backend engineering.
Curriculum · 1121 lessons
01The One To Many Relationshipintro3m02The Client Server Modelintro3m03HTTP Methods and Their Semanticsintro4m04The ICMP Protocol and Pingintro3m05URL and URI Structureintro3m06The Read Phenomenaintro4m07The Atomic Counterintro4m08How the Internet Routes Packetsintro4m09Data Parallelism vs Task Parallelismintro4m10The Anatomy of an HTTP Requestintro4m11The Query Parser and Plannerintro4m12The Print In Order Problemintro3m13The Critical Section Problemintro4m14The Concurrent Hash Mapintro4m15The Document Model Deepintro4m16Index Selectivityintro4m17B-Tree Indexesintro4m18Threads vs Processesintro4m19OLTP vs OLAPintro4m20The OSI Model Layersintro4m21The Actor Modelintro4m22Immutability for Thread Safetyintro4m23HTTP Cache Control Directivesintro4m24The Thread Per Request Modelintro4m25The Real SELECT Execution Orderintro4m26Optimistic vs Pessimistic Concurrency Revisitedintro4m27The C10k Problemintro4m28The Document Data Modelintro4m29The Single Threaded Event Loop Revisitedintro4m30Leader Follower Coordinationintro4m31How Email Is Delivered with SMTPintro4m32Backup Strategies Full and Incrementalintro4m33Inside a Mutexintro4m34How a B Tree Index Worksintro4m35Race Condition Detectionintro4m36Time Series Database Designintro4m37Parallel Sum Reductionintro4m38The ACID Properties Revisitedintro4m39The DNS Resolution Walkthroughintro4m40The B Tree Storage Engineintro4m41Idempotency in Distributed Systemsintro4m42The Select Query Execution Orderintro4m43The Future and Promise Abstractionintro4m44The Bandwidth vs Latencyintro4m45Vertical vs Horizontal Scalingintro4m46Redis Data Structures Overviewintro4m47The Process vs Threadintro4m48The Virtual Private Cloudintro4m49Entity Relationship Modelingintro4m50Deadlock: The Four Conditionsintro4m51Storage Layout and Pagesintro4m52The Ping and ICMPintro4m53Blocking vs Non Blocking IOintro4m54The Scaling Threads vs Eventsintro4m55The RPC Conceptintro4m56The InnoDB Storage Engineintro4m57Immutability and Concurrencyintro4m58Columnar Storage Benefitsintro4m59DynamoDB Partition and Sort Keysintro4m60The Parallel Reduce Treeintro4m61The OS Thread Schedulingintro4m62Lock Free Programming Introductionintro4m63LSM Tree Levels and Tiersintro4m64Round Robin and Weighted Balancingintro4m65Distributed Locks with ZooKeeperintro5m66The Buffer Pool and Page Cacheintro4m67Read Replicas and Read Scalingintro4m68Identifying Slow Queriesintro4m69Proxy and Reverse Proxy Revisitedintro4m70The CDN Cache Hierarchyintro4m71Schema Migration Toolingintro4m72Reading HTTP Status Codesintro4m73The Default Gatewayintro3m74The CAP Theorem Revisitedintro4m75Database Normalizationintro4m76Eventual Consistencyintro4m77Load Balancing Algorithmsintro4m78B plus Tree vs LSM Treeintro4m79Common Table Expressionsintro3m80Redis Core Data Structuresintro4m81The Request Response Cycleintro4m82GROUP BY and Aggregatesintro4m83The Compare And Set In Databasesintro4m84Content Type and MIME Negotiationintro4m85Parallel Map Filter Reduceintro4m86Callbacks And The Callback Hellintro4m87The DNS MX Recordintro4m88The Recursive Mutexintro4m89Downsampling and Retentionintro4m90The Cache Coherence Protocol MESIintro4m91Inner vs Outer Joinsintro4m92Redis Strings and Countersintro4m93The Mutual Exclusion Requirementsintro4m94Buffer Pool Managementintro4m95Synchronous vs Asynchronous IOintro4m96Postgres MVCC And Tuplesintro5m97Pure Functions and Parallelismintro4m98At Most Once Semanticsintro4m99Stateful And Stateless Firewallsintro4m100Spanner TrueTimeintro4m101The Cooperative Coroutinesintro4m102Raft Leader Election Deep Diveintro5m103HTTP2 Multiplexing In Depthintro4m104The Window Functions Deep Diveintro5m105The Bloom Filter in LSMintro4m106L4 vs L7 Load Balancing, Deepintro5m107Leases and TTL Locksintro4m108Sequences and Auto Incrementintro4m109The Spinlockintro4m110The Thread Per Connection Limitintro4m111Key Value Store Access Patternsintro4m112The Slow Query Logintro4m113Request and Response Headersintro4m114Deterministic Replay Debuggingintro4m115Logical vs Physical Plansintro4m116The Lock Striping Patternintro4m117The BSON and Field Typesintro4m118Composite Index Leftmost Prefixintro4m119The Happens Before Relation Deep Diveintro5m120TCP vs UDPintro4m121Mutex vs Semaphoreintro4m122Network Address Translationintro4m123Communicating Sequential Processesintro4m124Foreign Keys and Referential Integrityintro4m125Generated and Computed Columnsintro3m126Busy Waiting versus Blockingintro4m127ETags and Conditional Requestsintro4m128The Storage Engine and Pagesintro4m129Event Driven Concurrencyintro4m130The Lost Update Problemintro4m131Time to Live and Expiryintro4m132The PACELC Extensionintro4m133The Distributed Barrierintro4m134Wake on LANintro4m135Point in Time Recoveryintro4m136The Timed Lockintro4m137The Clustered vs Nonclustered Indexintro4m138The Embedded Database SQLiteintro4m139Amdahl Law Revisitedintro4m140The Parallel For Loopintro4m141The Memory Hierarchy Latencyintro4m142The Isolation Levels Explainedintro4m143Recursive vs Iterative Resolversintro4m144The LSM Tree Storage Engineintro4m145The Heap File Organizationintro4m146The Exactly Once Delivery Mythintro4m147The Self Join Patternintro4m148Async Await Desugaringintro4m149The Round Trip Time Impactintro4m150Read Replicas for Scaleintro4m151Redis Hashes and Objectsintro4m152The Green Threads and Fibersintro4m153The Subnets and Route Tablesintro4m154Primary And Foreign Keysintro4m155Livelock and Starvationintro4m156The Traceroute Path Discoveryintro4m157Vacuum And Autovacuumintro5m158The gRPC Fundamentalsintro4m159The Query Cache Deprecationintro4m160Lazy Evaluation and Concurrencyintro4m161DynamoDB Capacity Modesintro4m162Scaling the Producer Consumer Patternintro4m163YugabyteDB Designintro4m164ETL Versus ELTintro4m165Progress Guarantees Comparedintro5m166Quorum Intersectionintro4m167How DNS Resolution Worksintro5m168Surrogate vs Natural Keysintro3m169HAVING Versus WHEREintro3m170Soft Deletes vs Hard Deletesintro4m171The HTTP Status Code Familiesintro4m172Edge POP Selection With Anycastintro4m173The Running Totals and Moving Averagesintro5m174Volatile versus Atomicintro5m175Denormalizationintro4m176The Async Await Event Loopintro5m177Covering Indexesintro4m178Keepalive and Connection Reuseintro3m179IPv6 Basicsintro4m180Index Selectivity and Cardinalityintro4m181Query Result Cachingintro4m182Amdahl Lawintro4m183DNS Based Load Balancingintro4m184Cache Aside vs Write Through vs Write Backintro5m185The Thread Pool Sizing Formulaintro4m186HTTP Versus HTTPSintro4m187Distributed Locks With Leasesintro4m188HTTP Request Methods Semanticsintro4m189Advisory Locksintro4m190The Ticket Lockintro4m191Subnetting and CIDRintro5m192The Event Loop Scalabilityintro4m193The Pipeline Patternintro4m194Prepared Statement Reuseintro4m195Promises And Chainingintro5m196Linearizability vs Serializabilityintro5m197The Distributed Semaphoreintro4m198The Write Ahead Log Replayintro4m199The Thread Sanitizer Revisitedintro5m200False Sharing Revisitedintro4m201At Least Once With Deduplicationintro4m202The Event Loop Revisited Deeplyintro5m203The TCP Slow Startintro4m204Sharding Strategies Range and Hashintro5m205The Goroutines Modelintro5m206The Petersons Algorithmintro5m207Enums And Lookup Tablesintro4m208Write Ahead Log Internalsintro5m209The Embedded Documents vs Referencesintro5m210IO Multiplexing with select poll epollintro5m211TOAST For Large Valuesintro4m212The Queue Depth and Latencyintro4m213The Protobuf Serializationintro4m214The Clustered Index In InnoDBintro5m215Deduplication Windowsintro4m216VPN Tunneling With IPsecintro5m217DynamoDB GSI and LSIintro5m218The MapReduce Model in Depthintro6m219CockroachDB Architectureintro5m220The Stackful Versus Stackless Coroutinesintro5m221Index Merge Optimizationintro4m222HTTP2 Server Push In Depthintro4m223The RANK DENSE RANK and ROW NUMBERintro4m224The SSTable Format Deepintro5m225Least Connections Balancingintro4m226Heap Files vs Clustered Indexesintro4m227Audit Tables and Historyintro5m228The Service Mesh Data Planeintro4m229Index Prefix Matchingintro4m230The Cost Based Optimizerintro5m231The Read Phenomena Dirty Nonrepeatable Phantomintro5m232DNS Record Types Deepintro5m233The Internet Gatewayintro4m234The Copy On Write Collectionsintro4m235The Dig and Nslookupintro4m236Cache Key And The Vary Headerintro4m237Reverse ETLintro4m238The WireGuard Protocolintro4m239HPACK Header Compression In Depthintro5m240Idempotent and Safe HTTP Methodscore4m241The JSON RPCcore4m242Read Write Lockscore4m243Content Negotiationcore4m244Batch Writes and Bulk Loadingcore4m245The Retry After Headercore3m246FTP and SFTP Basicscore4m247The Bank Account Transfer Deadlockcore4m248The Cooperative Schedulingcore4m249Soft Deletes And Audit Columnscore5m250The gRPC Reflection and Healthcore4m251Stored Procedurescore4m252The Run Loopcore4m253Cache Line Paddingcore4m254The Traffic Light Controllercore4m255The Case Expression Logiccore4m256The Schema Validation Rulescore5m257The LAG and LEAD Functionscore4m258Thread Poolscore4m259Server Sent Eventscore4m260DHCP Address Assignmentcore4m261Upsert and On Conflictcore4m262Database Triggerscore4m263Rate Limiting With A Semaphorecore4m264Jumbo Framescore4m265Gzip and Brotli Compressioncore4m266Savepoints And Nested Transactionscore4m267The Future And Promise Revisitedcore5m268Private versus Public IP Addressescore4m269Connection Pooling Concurrencycore5m270The Scatter Gather Patterncore4m271Sidecar Proxiescore4m272The Last Write Wins Registercore4m273The Try Lock Patterncore4m274The Immutable Data Benefitcore4m275The In Memory Databasecore4m276The Volatile Keyword Semanticscore5m277The Bounded Buffercore5m278The Page and Buffer Poolcore5m279Group By and Havingcore4m280The Connection Pooling Reusecore5m281Cache Layer for Readscore5m282The Preemptive Schedulingcore4m283The Concurrent Linked Queuecore5m284The MongoDB Indexescore5m285The Thrift Overviewcore4m286DNS Over TLScore4m287Cassandra Ring and Tokenscore5m288Range Based Sharding In SQLcore4m289Descending Indexescore4m290Server Sent Events In Depthcore4m291The NTILE Bucketing Functioncore4m292Sticky Sessions, Deepcore5m293Coroutines and Cooperative Schedulingcore5m294Views vs Materialized Viewscore4m295Partial and Expression Indexescore5m296DNS Caching and TTLcore4m297Async Await Error Handlingcore5m298The Hash Indexcore4m299Cookies, Attributes, and Scopecore5m300Stress Testing Concurrent Codecore4m301Gustafson Lawcore4m302Predicate Pushdowncore4m303The Multithreaded FizzBuzzcore4m304The Memtable and Flushcore4m305Redis Lists and Queuescore5m306The NAT Gatewaycore5m307The Network Address Translation in Cloudcore5m308The Many To Many Junction Tablecore4m309The Netstat and SScore5m310The Curl for Debuggingcore5m311The Change Streamscore5m312The gRPC Streaming Modescore5m313Producer Consumer Patterncore4m314The TCP Three Way Handshakecore4m315The ARP Protocolcore4m316Secondary vs Composite Indexescore4m317Window Functionscore4m318Server Name Indicationcore4m319The Fill Factor and Page Splitscore5m320INNER Versus OUTER Joinscore5m321Cookies and Sessionscore5m322Lock Granularitycore5m323The Cooperative Schedulercore4m324Port Numbers and Socketscore4m325The IO Multiplexing With Epollcore5m326The Graph Database Modelcore5m327Health Checks Active and Passivecore4m328Hinted Handoffcore4m329Connection Draining on Deploycore4m330The Countdown Latchcore4m331Content Negotiation Deep Divecore5m332The Lock Ordering Disciplinecore4m333Sort and Aggregation Operatorscore5m334Compiler Reorderingcore5m335The Producer Consumer Problemcore5m336Common Table Expressions Revisitedcore5m337The Keep Alive Tuningcore5m338Connection Pooling at Scalecore5m339The CPU Bound vs IO Boundcore4m340The Test And Set Lockcore4m341Query Plan Cachingcore4m342The Blocking Queuecore5m343The Rate Limiter Token Refillcore5m344The Buffer Pool In InnoDBcore5m345Materialized Views for Analyticscore5m346DNS Over HTTPScore5m347Cassandra Replication Factorcore5m348Hash Based Sharding In SQLcore4m349Stale While Revalidate At The CDNcore5m350Backfill Strategiescore5m351MQTT For IoTcore5m352The Pivot with Conditional Aggregationcore5m353The B Tree Page Split Deepcore5m354DNS Load Balancing, Deepcore5m355Database Normalization Formscore5m356The HTTP Keep Alive Timeoutcore4m357The Master Worker Patterncore4m358Connection Drainingcore4m359The Message Passing Safetycore4m360Workload Managementcore5m361Connection Draining, Deepcore5m362Transactions and ACIDcore5m363Deadlockcore5m364Change Data Capturecore5m365Reverse Proxy vs Forward Proxycore4m366Async IO and Non Blockingcore5m367MTU and Packet Fragmentationcore4m368Compaction and Tombstonescore4m369Double Checked Lockingcore5m370HTTP Strict Transport Securitycore4m371The Hash Slot Modelcore4m372Index Only Scanscore5m373The Fork Join Frameworkcore5m374Public Key Infrastructure Basicscore5m375Self Joinscore4m376The Fencing Tokencore5m377The Same Origin Policycore4m378Two Phase Lockingcore5m379The Seqlockcore5m380The Bounded Queue For Backpressurecore5m381Embedding versus Referencing in Documentscore5m382Batching Writes for Throughputcore4m383The Timer And Io Callbackscore5m384Quorum Read Write Mathcore5m385The Distributed Queuecore5m386SPF, DKIM, and DMARCcore5m387Replication Topologiescore5m388Condition Variable Usagecore5m389The Composite Index Column Ordercore5m390Deadlock Detection at Runtimecore4m391Hypertable Partitioningcore5m392Join Algorithms Nested Loop Hash Mergecore5m393The Store Buffer and Forwardingcore5m394The SSTable and Compactioncore5m395The Saga Compensation Patterncore5m396Subqueries vs Joinscore5m397The Thread Pool Executorcore5m398The Congestion Window Dynamicscore5m399Shard Key Selectioncore5m400Redis Pub Subcore4m401The Fetch And Addcore4m402Composite Keyscore4m403The Checkpoint Processcore5m404The Aggregation Pipelinecore6m405Edge vs Level Triggered Notificationscore5m406Index Types Btree Gin Gist Brincore6m407The Little Law Applied to Threadscore5m408The gRPC Interceptorscore4m409Message Passing Semanticscore5m410The Redshift MPP Enginecore5m411The TLS Inspection Proxycore5m412DynamoDB Streamscore5m413Distributed Transactions Two Phase Commitcore5m414The Green Thread Schedulingcore5m415Zero Downtime Migrationcore5m416The Treiber Stackcore5m417Covering Index Deep Divecore5m418HTTP3 Over QUIC In Depthcore5m419The FIRST VALUE and LAST VALUEcore5m420Fencing Tokenscore5m421WebSockets for Real Time Communicationcore4m422Network Firewalls and Packet Filteringcore4m423Full Text Searchcore4m424Near Cache and Client Side Cachingcore4m425Set Operations UNION INTERSECT EXCEPTcore5m426Last Write Wins Conflictscore5m427The Three Way Handshake Revisitedcore4m428SIMD Vectorization Basicscore4m429Mutual TLS in a Meshcore5m430The Rolling Restartcore4m431The Unique Index and Constraintscore5m432The Cache Control Directives Revisitedcore5m433The Long Running Transaction Problemcore4m434The Space Amplificationcore4m435Pg Stat Statementscore5m436Data Compression Encodingscore5m437Edge Function Cold Startscore5m438Index Maintenance Costcore5m439CoAP For Constrained Devicescore5m440The Compiler Reordering Deep Divecore6m441The Page Compressioncore4m442Power of Two Choicescore5m443Leader Election the Ring Algorithmcore5m444Join Typescore5m445Futures and Promisescore4m446Columnar Storagecore5m447The Reactor Patterncore5m448TCP Flow Control and the Sliding Windowcore5m449Thread Safe Singletoncore5m450Graceful Connection Drainingcore4m451Range Based Shardingcore5m452Redis Persistence RDB and AOFcore5m453Undo and Redo Logscore5m454Parallel Map Reducecore5m455TCP Versus UDP Tradeoffs Revisitedcore5m456Subqueries Versus Joinscore5m457Idempotency Keys For Retriescore5m458HTTP Redirects and Status Familiescore5m459The Proactor Vs Reactor Patterncore5m460Eventual Consistency in NoSQL Readscore5m461The Phaser and Countdown Latchcore5m462Reading EXPLAIN ANALYZE Outputcore5m463Load Balancing Algorithms Comparedcore5m464The Task Queue And Microtask Queuecore5m465Consensus With Raft Revisitedcore5m466The Ephemeral Node And Watchcore5m467The Gossip Disseminationcore5m468The WebSocket Upgrade Handshakecore5m469Capacity Planning for Storagecore5m470The Monitor Pattern Revisitedcore5m471The Partial Indexcore5m472The Happens Before in Toolscore5m473The Search Engine Inverted Indexcore5m474Parallel Merge Sortcore5m475Parallel Quicksortcore5m476Load Balancing Of Taskscore5m477The Divide And Conquer Parallelismcore5m478Statistics and Histogramscore5m479The DNS Load Balancingcore5m480The Read Amplificationcore5m481Logical Clocks and Lamport Timestampscore5m482The Nagle Algorithm Tradeoffcore5m483Cross Shard Queriescore5m484Redis Sets and Sorted Setscore5m485The Async Runtime Tokio Stylecore5m486The Spinlock vs Blocking Lockcore5m487The VPC Peeringcore5m488The Elastic Load Balancer Typescore5m489Surrogate Versus Natural Keyscore5m490Vacuum Internalscore5m491The Tcpdump Capturecore5m492Streaming Replicationcore5m493The Backpressure End to Endcore5m494The gRPC Deadlines and Cancellationcore5m495The Actor Model Deep Divecore5m496The Snowflake Architecturecore5m497Volumetric Versus Application DDoScore5m498Cassandra Wide Rowscore5m499Parallel Breadth First Searchcore5m500Raft For SQL Replicationcore5m501The Async Runtime Executorcore5m502Database Replication For Migrationcore5m503Consensus in Practice Tradeoffscore6m504WebSocket Framing In Depthcore5m505The Correlated Subquery Patternscore5m506The Write Stall in LSMcore4m507Redis Redlock and Its Criticscore6m508Livelockcore4m509Read Replicas and Stalenesscore5m510Long Polling vs WebSocketscore4m511Prepared Statements and Plan Cachingcore4m512Connection Pooling for HTTP Clientscore5m513Fsync and Durabilitycore5m514Network Congestion And Queuingcore5m515Eventual Consistency And Convergencecore5m516Polymorphic Associationscore5m517The Nagle Algorithmcore4m518The Bulkhead Thread Pool Isolationcore5m519Secondary Indexes in NoSQLcore5m520Detecting the N Plus Onecore5m521The Bloom Filter For Membershipcore5m522Network Time Protocolcore5m523Monitoring Database Healthcore5m524HTTP Authentication Schemescore5m525The Spatial Databasecore5m526The SNI and Encrypted SNIcore5m527The Dirty Page Flushingcore4m528The Pivot and Unpivotcore5m529The Work Queue and Rejectioncore5m530The Optimistic vs Pessimistic Lockingcore5m531The Order Violationcore4m532Statistics Collectioncore5m533The Read and Write Concernscore6m534Thread Pools for IOcore5m535WAL And Archivingcore6m536The Deadlock Detection In MySQLcore5m537Futures and Promises Functionalcore5m538Partition and Cluster Keyscore5m539Sagas and Compensationcore5m540Time Series in Cassandracore6m541Pipeline Backpressurecore5m542The Priority Schedulingcore5m543Request Collapsing At The CDNcore5m544Index Condition Pushdowncore5m545QUIC Connection Migrationcore4m546The Java Memory Model Deep Divecore6m547The Checkpoint and Fsynccore5m548Health Checking, Deepcore6m549Gossip Disseminationcore5m550Pessimistic Lockingcore5m551HTTP2 Multiplexingcore5m552Materialized Viewscore5m553The Compare and Swap Loopcore5m554How Traceroute Workscore4m555Connection Limits and Pool Sizingcore4m556Condition Variables and Wait Notifycore5m557TLS Session Resumptioncore5m558Consistent Hashing for Shard Placementcore5m559DynamoDB Partition Key Designcore5m560Checkpointingcore5m561Structured Concurrencycore5m562Perfect Forward Secrecycore4m563The EXISTS Operatorcore4m564Chunked Transfer Encodingcore4m565Idempotent Transaction Retriescore4m566Lock Contention Profilingcore5m567Write Scaling with Shardingcore5m568The Token Bucket Rate Limiter Concurrencycore5m569The Wide Column Storecore5m570Index Only Scans and Covering Indexescore5m571Traffic Splitting and Canary Routingcore5m572The Worker Thread Modelcore5m573Zookeeper Style Coordinationcore5m574The SSH Protocolcore5m575Barrier Synchronizationcore4m576The Expression Indexcore5m577Conditional Requests and Caching Validatorscore5m578Graph Database Traversalcore5m579Sequential Consistency Modelcore5m580The Deadlock Detection and Preventioncore5m581The Sleeping Barber Problemcore5m582Anycast DNScore5m583Distributed Transaction Alternativescore5m584The Correlated Subquerycore5m585Resharding and Rebalancingcore5m586Cache Eviction Policies in Rediscore5m587The Lock Granularity Tradeoffscore5m588The Lost Wakeup Bugcore5m589MVCC Snapshot Internalscore5m590The Compound and Multikey Indexcore6m591The Proactor Patterncore5m592Native Table Partitioningcore6m593The Load Shedding Under Pressurecore5m594The Redo And Undo Logscore6m595Channels and the CSP Modelcore5m596The BigQuery Dremel Modelcore5m597SYN Flood Mitigationcore5m598DynamoDB Single Table Designcore6m599The Parallel Scan and Blelloch Algorithmcore6m600Follower Readscore4m601Surrogate Keys And Targeted Purgingcore5m602Dual Write Patterncore5m603Data Validation Post Migrationcore5m604Inverted Index For Searchcore5m605Basic Paxos Deep Divecore6m606The JSON Functions in SQLcore5m607The CPU Out of Order Executioncore6m608Compaction Leveled vs Tieredcore5m609Consistent Hashing for Load Balancing, Deepcore6m610Leader Election the Bully Algorithmcore5m611Understanding CORScore5m612Service Discoverycore5m613Hot Key Mitigation in Cachescore5m614Deadlock Victim Selectioncore5m615The LIMIT And OFFSET Pagination Costcore5m616Exactly Once vs At Least Oncecore5m617Work Stealing Dequescore5m618Sequential Scan Versus Index Scancore5m619Cooperative Versus Preemptive Schedulingcore5m620The Leader Leasecore5m621The Lease Renewalcore5m622Server Sent Events vs WebSockets Revisitedcore5m623The Slow Query Alertingcore5m624Index Maintenance Overheadcore5m625Wide Column Store Designcore5m626Join Order Selectioncore5m627The Completable Future Compositioncore5m628Index B Tree Internalscore5m629The Concurrent Skip Listcore5m630Socket Buffer Tuningcore5m631The Partitioning In MySQLcore6m632Agents and Refs Clojure Stylecore5m633Query Pruning with Zone Mapscore5m634Wide Column Data Modelingcore6m635The Task Waker Mechanismcore5m636Linearizability Proofscore6m637Function Based Indexescore5m638Viewstamped Replicationcore6m639The Full Text Search in SQLcore6m640The Sequential Consistency Deep Divecore6m641The WAL Group Commitcore4m642Load Balancer High Availabilitycore5m643Distributed Barrierscore5m644Query Execution Planscore5m645Spurious Wakeupscore4m646Cassandra Tunable Consistencycore5m647Group Commitcore5m648Cancellation And Timeoutscore5m649The Happens Before Relationcore5m650Deadlock Prevention Versus Detectioncore5m651The Entity Attribute Value Antipatterncore5m652The Circuit Breaker State Machinecore5m653Access Pattern Driven Modelingcore5m654Connection Pool Sizingcore5m655The Covering Index Revisitedcore5m656Fuzzing Concurrent Programscore5m657The Connection Pool Concurrencycore5m658The TLS Handshake Walkthroughcore6m659Window Functions Rankingcore5m660The Prefetch and Preconnectcore5m661Database Proxy and Routingcore5m662The Compare And Swap Primitivecore5m663The Atomicity Violationcore4m664The Replica Set Electionscore5m665IO Completion Portscore5m666Logical Replicationcore6m667The Graceful Degradation Concurrentcore5m668The Binlog Replicationcore6m669Select and Timeoutcore4m670The ClickHouse Vector Enginecore5m671IP Spoofing Preventioncore5m672Global Secondary Index In Distributed SQLcore5m673The Preemption Pointscore5m674Data Sync Conflict Resolutioncore5m675Raft Log Replication Deep Divecore6m676The False Sharing Mitigation Deep Divecore6m677Race conditions & lockscore5m678Atomic Operations and CAScore5m679Inside the TLS Handshakecore5m680LSM Treescore6m681QUIC and HTTP3core5m682Work Stealing Schedulerscore5m683Web Application Firewallscore4m684Declarative Table Partitioningcore5m685OCSP Staplingcore5m686Cache Stampede Preventioncore5m687The Diffie Hellman Key Exchangecore5m688Correlated Subqueriescore5m689CORS Preflight Requestscore5m690Async Await Under The Hoodcore5m691The GPU Thread Model Basicscore5m692Table and Index Bloatcore5m693Message Passing Between Workerscore5m694Anti Entropy With Merkle Treescore5m695The Herd Effect On Lockscore5m696Port Forwarding and Tunnelingcore5m697Read Your Writes After Failovercore5m698The Cyclic Barriercore5m699The Vector Database for Embeddingscore5m700Parallel Prefix Sumcore6m701The Work And Span Modelcore5m702The Acquire Release Semanticscore5m703Multiversion Concurrency Control MVCCcore5m704Event Ordering Guaranteescore5m705The Reactive Streams Speccore5m706Redis Streamscore5m707The Event Loop Per Corecore5m708The Security Groups vs NACLscore5m709The DNS Based Service Discoverycore5m710Normalization To Third Normal Formcore6m711Lock Manager Internalscore5m712The Wireshark Analysiscore5m713The DNS Resolution Debuggingcore5m714The MVCC In InnoDBcore6m715Parallel Matrix Multiply and Blockingcore6m716Edge Key Value Storagecore5m717Full Text Indexes Deep Divecore5m718ZAB the ZooKeeper Atomic Broadcastcore6m719QUIC Zero RTT Resumptioncore5m720The Recursive CTE for Hierarchiescore6m721The C plus plus Memory Model Deep Divecore6m722The Copy On Write B Treecore5m723Replication Lagcore5m724The Dining Philosophers Problemcore5m725Statistics and Histograms for the Plannercore6m726The Circuit Breaker For Concurrencycore5m727The Primary Key Choice for Shardingcore5m728Tunable Consistency Levelscore5m729Cancellation Tokenscore5m730The Full Text Indexcore5m731The Ledger and Immutable Databasecore5m732The Row Versus Column Tradeoffscore5m733Conflict Resolution Strategiescore5m734The TCP Fast Opencore5m735The Distributed Joins Problemcore5m736Redis Sentinel High Availabilitycore5m737The Lock Contention Effectscore5m738Time Of Check To Time Of Usecore4m739The Sharding in MongoDBcore6m740The io uring Interfacecore5m741Explain Analyze Deepcore6m742The Timeout Propagationcore5m743Snapshot Isolationcore5m744Network Intrusion Detectioncore5m745Geo Partitioningcore5m746The Cgroup CPU Limitscore5m747The Cache Coherence MESI Deep Divecore6m748Comparing Vector Clockscore6m749The Bandwidth Delay Productcore5m750Indexes For Sorting And Groupingcore5m751The Saga vs Two Phase Commitcore6m752Intention Lockscore5m753The Thread Sanitizercore5m754The Parallel Prefix Scancore5m755Vacuum and Analyze Tuningcore5m756Vector Clocks For Causalitycore5m757HTTP2 Server Pushcore5m758Schema Migration Expand and Contractcore5m759Set Cookie and SameSitecore5m760Cardinality Estimationcore5m761The Snapshot Isolationcore5m762DNSSEC Basicscore6m763Backpressure Strategiescore5m764Transaction Id Wraparoundcore5m765The GTID Replicationcore6m766Ordering Guaranteescore5m767GPU Kernel Parallelismcore6m768The Work Stealing Runtime Deepcore6m769Spatial Indexes And R Treescore5m770Multi Paxos Deep Divecore6m771Multiversion Concurrency Controlcore5m772REST versus gRPCcore5m773Optimistic Concurrency Controlcore5m774TCP Congestion Controlcore5m775Sequential Consistency vs Relaxedcore5m776The Readers Writers Problemcore5m777Bulkheads For Isolationcore5m778Cross Shard Queries and Scatter Gathercore5m779Slow Start and Congestion Avoidancecore5m780The Consistent Hashing Ringcore5m781Sticky Sessions and Consistent Hashingcore5m782Read Write Lock Implementationcore5m783Bearer Tokens in Headerscore5m784Causal Consistencycore5m785Redis Cluster Shardingcore5m786The N to M Threadingcore5m787Schema Evolution And Migrationscore6m788The Memory Visibility Bugcore5m789The Bulkhead Sizingcore5m790The GraphQL Over HTTPcore5m791Software Transactional Memory Deep Divecore6m792The Parallel Bitonic Sortcore6m793Clock Skew Handlingcore5m794Tiered Caching With Origin Shieldcore5m795Blue Green Data Cutovercore5m796Read Copy Update RCUcore6m797gRPC Over HTTP2core5m798The Acquire Release Deep Divecore6m799B Tree Concurrency Latchingcore5m800Maglev Hashingcore6m801Anycast Routingcore4m802Online Schema Change Toolscore5m803Window Function Executioncore5m804The Flow Control in Reactivecore5m805The Hazard Pointers Recapcore5m806The Gap And Next Key Lockscore6m807Causal Deliverycore5m808Tendermint BFT Consensuscore6m809ACID & isolation levelscore6m810Partitioning vs Shardingcore5m811Sharding Key Choicecore6m812Mutual TLScore5m813Linearizabilitycore5m814Hash Merge and Nested Loop Joinscore5m815Monitors and Intrinsic Lockscore5m816Google Spanner and TrueTimecore6m817The Saga For Long Transactionscore5m818The Outbox Table for Eventscore5m819Vector Clocks Revisitedcore5m820The Recursive CTEcore6m821The Cold versus Hot Observablescore5m822Multi Region Databasecore5m823The Cross Zone Load Balancingcore5m824Denormalization For Readscore5m825The Double Checked Locking Bugcore5m826The MTR Combined Toolcore5m827The Packet Loss Diagnosiscore5m828The Latency Spikes Investigationcore6m829Serializable Transactionscore5m830Live Video Delivery At The Edgecore6m831The Lock Free Hash Mapcore6m832The Read Copy Update RCUcore6m833Egalitarian Paxoscore6m834BGP Routing Basicscore5m835Semaphore Based Resource Poolscore5m836Database Migrations Zero Downtimecore5m837Hazard Pointerscore6m838Wait Free Algorithmscore6m839TCP Retransmission and Timeoutadvanced5m840Time Series Databasesadvanced6m841The Leader Latch Patternadvanced5m842Range Requests and Resumable Downloadsadvanced5m843The CDN Edge Cache Hitadvanced5m844Retries and Outlier Detection in a Meshadvanced5m845The Linearizability Checkeradvanced5m846The Context Switch Costadvanced5m847The Lock Free Stack Treiberadvanced5m848The Circuit Breaker Tuningadvanced5m849Port Scanning Detectionadvanced5m850Deadlock Detectionadvanced5m851The Read Write Lock Fairnessadvanced5m852Hash Index Limitationsadvanced5m853The Read Path and Write Pathadvanced5m854JSON Columns and Indexingadvanced4m855Geo DNS Routingadvanced5m856The Outbox Pattern for Reliable Eventsadvanced6m857The Visibility Mapadvanced5m858Edge Computing And Points Of Presenceadvanced5m859Avoiding The SELECT Star Anti Patternadvanced4m860The Load Balancer Health Checkadvanced5m861CORS Simple vs Preflightadvanced6m862The Secondary Index Lookupsadvanced5m863The Bastion Host And Jump Boxadvanced5m864Adaptive Bitrate At The Edgeadvanced6m865AMQP Messagingadvanced6m866gRPC Streamingadvanced5m867Denormalization for Read Performanceadvanced4m868Stamped Lock Optimistic Readadvanced5m869The Bitmap Indexadvanced5m870The Actor Isolation Guaranteeadvanced5m871The Multi Model Databaseadvanced5m872The Fork Join Overheadadvanced5m873The Embarrassingly Parallel Problemadvanced4m874The Scheduler and Thread Hoppingadvanced6m875Redis Pipeliningadvanced5m876The Thread Affinity and Pinningadvanced5m877The Transit Gatewayadvanced6m878The Connection and Process Modeladvanced5m879The Connection Reset Causesadvanced6m880The Adaptive Concurrency Limitadvanced6m881The gRPC Load Balancingadvanced5m882Reactive Functional Streamsadvanced6m883Vector Databasesadvanced6m884IP Multicastadvanced5m885Geospatial Indexesadvanced5m886Priority Inversionadvanced5m887Read Repair and Anti Entropyadvanced5m888The Doublewrite Bufferadvanced5m889Backpressure In Reactive Streamsadvanced6m890The Proxy Protocol For Client IPadvanced4m891Keyset Paginationadvanced5m892Logical Clocksadvanced6m893WebSocket Subprotocolsadvanced5m894The Write Skew Anomalyadvanced5m895The False Sharing Cache Lineadvanced5m896Lock Free Stacks and Queuesadvanced5m897Denormalization Tradeoffs Revisitedadvanced5m898The TCP versus HTTP Load Balanceradvanced5m899The HTTP2 Stream and Frameadvanced6m900The Lateral Joinadvanced5m901The Relaxed Memory Orderingadvanced5m902The Unisex Bathroom Problemadvanced6m903Certificate Revocation and OCSPadvanced6m904The Write Amplificationadvanced5m905The Head of Line Blocking in TCPadvanced6m906Data Race vs Race Conditionadvanced5m907The Time Series Collectionsadvanced6m908Zero Copy Techniquesadvanced5m909The Read Replica Routingadvanced6m910Hardware Transactional Memoryadvanced5m911SIMD Vectorization in Depthadvanced6m912Rollback Planningadvanced6m913Bitmap Index Deep Diveadvanced6m914Hybrid Logical Clocksadvanced6m915SQL vs NoSQLadvanced6m916Memory Visibility and Happens Beforeadvanced6m917Layer 4 versus Layer 7 Load Balancingadvanced5m918Protocol Buffersadvanced5m919Lock Free Data Structuresadvanced6m920The Query Optimizer Cost Modeladvanced5m921Recursive CTEsadvanced5m922Certificate Transparencyadvanced5m923Leaderless Quorum Reads and Writesadvanced6m924Parameter Sniffingadvanced6m925Virtual Threads And Green Threadsadvanced6m926The Bufferbloat Problemadvanced5m927Connection Keep Alive and Poolingadvanced5m928The Temporal Tableadvanced6m929Anycast for DNSadvanced5m930The Timeout And Cancellation Propagationadvanced6m931Single Table Design in DynamoDBadvanced6m932The Two Phase Commit Failure Modesadvanced5m933HTTP3 over QUIC Revisitedadvanced6m934Blue Green Database Cutoveradvanced6m935Spin Then Block Strategyadvanced5m936The Gin and Gist Indexesadvanced6m937The Cigarette Smokers Problemadvanced6m938The Double Write Bufferadvanced5m939CRDT Counters and Setsadvanced6m940The Aggregate Window Framesadvanced6m941The Timeout and Retry Combinatorsadvanced6m942The Multiplexing Benefitadvanced6m943Distributed Global Secondary Indexesadvanced6m944The Lock Free vs Wait Freeadvanced5m945Multi Tenant Schema Designadvanced6m946The Convoy Effectadvanced5m947Parallel Query Executionadvanced5m948Connection Handling at Scale the c10k Problemadvanced5m949Connection Pooling With Pgbounceradvanced6m950The MessagePack and Avroadvanced5m951Parallel Collectionsadvanced5m952Distributed Aggregationadvanced6m953Cassandra Compaction Strategiesadvanced6m954Parallel Graph Coloringadvanced6m955Serializable Isolation Distributedadvanced6m956The CPU Pinning And Isolationadvanced6m957Image Transformation At The Edgeadvanced6m958The ABA Problem And Solutionsadvanced6m959Raft Membership Changesadvanced6m960The Gaps and Islands Problemadvanced6m961The Fractal Tree Indexadvanced5m962Global Server Load Balancing, Deepadvanced6m963Membership with SWIMadvanced6m964Padding To Avoid Contentionadvanced5m965The Michael Scott Queueadvanced6m966The GROUPING SETS ROLLUP and CUBEadvanced6m967The Relaxed Atomics Deep Diveadvanced6m968Query Plan Cardinality Estimationadvanced6m969The Quorum Intersectionadvanced6m970The Gossip Protocol for Membershipadvanced6m971Read Replica Lag Handlingadvanced5m972Shared Array Buffer And Atomicsadvanced6m973Fencing Tokens Revisitedadvanced6m974Failover and Promotionadvanced5m975When Not to Indexadvanced6m976Testing with Controlled Schedulingadvanced5m977Cache as a Database Antipatternadvanced5m978The Granularity Of Tasksadvanced5m979The Synchronization Costadvanced5m980Query Rewrite Rulesadvanced5m981The NUMA Architecture Effectsadvanced5m982Redis Lua Scriptingadvanced5m983The Structured Concurrency Revisitedadvanced5m984The Private Link and Endpointsadvanced6m985The TLS Handshake Debuggingadvanced6m986The Atlas Searchadvanced6m987Async File IOadvanced5m988The REST vs gRPC vs GraphQLadvanced6m989Microsegmentationadvanced5m990Dataflow Graph Executionadvanced6m991The Latency Versus Throughput Schedulingadvanced6m992Direct IO vs Page Cacheadvanced5m993The Volatile Keyword Misconceptionsadvanced5m994Graceful Shutdown Of Workersadvanced6m995The Hazard Pointer Reclamationadvanced5m996The ABA Problem Revisitedadvanced5m997WebRTC Data Channelsadvanced6m998The Fences and Barriers Deep Diveadvanced6m999The Write Ahead Logadvanced6m1000Latency versus Throughputadvanced5m1001Head of Line Blockingadvanced5m1002The ABA Problemadvanced5m1003DDoS Mitigation Strategiesadvanced5m1004Gap Locks and Phantom Preventionadvanced5m1005Autovacuum and Table Bloatadvanced5m1006Deadlock Prevention Strategiesadvanced6m1007Retry Budgets and Deadlinesadvanced5m1008Vector Clocks for Conflict Detectionadvanced6m1009Snapshot Isolation Internalsadvanced6m1010The Disruptor Ring Bufferadvanced6m1011Zero Trust Networkingadvanced5m1012Query Plan Reading Basicsadvanced6m1013Leader Election With Heartbeatsadvanced6m1014Serializable Snapshot Isolationadvanced6m1015Multi Tenancy Data Modelsadvanced6m1016Query Timeout and Cancellationadvanced5m1017Global Server Load Balancingadvanced5m1018The Channel And Select Patternadvanced6m1019The Percolator Style Transactionsadvanced6m1020The Split Brain Resolveradvanced6m1021Head of Line Blocking Solvedadvanced6m1022The Disaster Recovery Drilladvanced6m1023The Futex Syscall Ideaadvanced5m1024HTTP2 Header Compression with HPACKadvanced6m1025The Building H2O Problemadvanced6m1026The Column Oriented Storageadvanced5m1027Operational Transform Basicsadvanced6m1028The Null Handling in SQLadvanced6m1029The Bulkhead with Thread Poolsadvanced6m1030The Compression on the Wireadvanced6m1031Active Active Replicationadvanced6m1032Redis as a Rate Limiteradvanced5m1033The Work Stealing Scheduler Revisitedadvanced5m1034The False Sharing Impactadvanced5m1035Replication Stream Internalsadvanced5m1036The Elimination Backoff Stackadvanced5m1037Json And Jsonbadvanced6m1038The Saturation and Tail Latencyadvanced6m1039The API Contract First Designadvanced6m1040The Online DDL In MySQLadvanced6m1041Dataflow Programmingadvanced6m1042Bloom Filters in Analyticsadvanced6m1043Three Phase Commitadvanced5m1044Cassandra Read Repairadvanced6m1045Actor Supervision Treesadvanced6m1046Online Schema Change Distributedadvanced6m1047Bot Management At The Edgeadvanced6m1048Large Table Migrationadvanced6m1049The LATERAL Join Deep Diveadvanced6m1050Buffer Pool Eviction Deepadvanced5m1051Anycast Load Balancingadvanced6m1052False Sharingadvanced5m1053The Sequence Lock Seqlockadvanced5m1054Event Driven Server Designadvanced6m1055The Real Time Schedulingadvanced6m1056Byzantine Paxosadvanced6m1057The Store Buffer Forwarding Deep Diveadvanced6m1058The Atomic Compare and Swap Hardwareadvanced5m1059The Transactions in Document DBadvanced6m1060Read Copy Updateadvanced6m1061The Circuit Breaker in Networkingadvanced5m1062Partition Tolerance And Split Brainadvanced6m1063The WebRTC Peer Connectionadvanced6m1064Isolation In Distributed Databasesadvanced6m1065The Memory Ordering Acquire Releaseadvanced6m1066The Work Queue And Dispatcheradvanced6m1067Conflict Resolution with Vector Clocksadvanced6m1068Epoch Based Reclamationadvanced5m1069The Edge Proxy and WAFadvanced5m1070Structured Concurrency Scopesadvanced6m1071The Quorum Based Decisionadvanced6m1072Maximum Transmission Unit Discoveryadvanced6m1073The Property Based Concurrency Testadvanced5m1074NewSQL Distributed SQLadvanced6m1075Vectorized Executionadvanced5m1076The Distributed Transaction Coordinatoradvanced6m1077Leaderless Replication Writesadvanced6m1078The Memory Reclamation Problemadvanced6m1079The BGP and Direct Connectadvanced6m1080Temporal And Bitemporal Dataadvanced6m1081The MTU and Fragmentation Issuesadvanced6m1082Extensions And Postgisadvanced6m1083Late Materializationadvanced6m1084Cassandra Lightweight Transactionsadvanced6m1085The Gang Schedulingadvanced5m1086Memory Ordering For Lock Freeadvanced7m1087The Data Race Undefined Behavioradvanced6m1088Direct Server Returnadvanced5m1089IP Addressing and Subnetsadvanced6m1090Sharding Rebalancingadvanced5m1091The Priority Inheritance Protocoladvanced5m1092The Load Linked Store Conditionaladvanced5m1093The TLS Improvements in Version 1.3advanced6m1094The Circuit Breaker for Asyncadvanced6m1095The Latency Budgets in Designadvanced6m1096Cell Based Architectureadvanced6m1097The Flat Combiningadvanced5m1098Multi Region Writesadvanced6m1099Geo Routing And Traffic Steeringadvanced6m1100Foreign Key Migration Challengesadvanced6m1101Flexible Paxosadvanced6m1102WebTransport Overviewadvanced6m1103TrueTime and Clock Boundsadvanced6m1104Optimistic vs Pessimistic Lockingadvanced6m1105Memory Barriers and Fencesadvanced6m1106Contention and Scalabilityadvanced6m1107The Deadline Propagationadvanced6m1108The Calvin Deterministic Approachadvanced6m1109The Vector Clock Comparisonadvanced6m1110HTTP3 and QUIC Streamsadvanced6m1111The Consensus Latency Costadvanced6m1112The Lock Free Retry Loopadvanced6m1113The Coordinated Omissionadvanced6m1114Cost Based Optimization in Warehousesadvanced6m1115Exactly Once Processingadvanced6m1116PBFT Three Phase Protocoladvanced7m1117The Saga Orchestration Concurrencyadvanced6m1118The Concurrent Rate Limiteradvanced6m1119The Egress Cost Optimizationadvanced6m1120The Software Transactional Memoryadvanced6m1121Universal Constructionadvanced6m
Practice · 59 problems
⚔️Recent Counter1050⚔️Data Stream Consecutive1050⚔️Min Stack1100⚔️Min Stack with getMin1100⚔️Most Recently Used Queue1100⚔️Design HashSet1150⚔️Logger Rate Limiter1150⚔️Ordered Stream1150⚔️Stack Using Two Queues1150⚔️Design Recent Counter1150⚔️Design Tic-Tac-Toe1180⚔️Queue Using Stacks1200⚔️Stack Using Queues1200⚔️Design Logger Rate Limiter1200⚔️Design Circular Queue1300⚔️Design HashMap1300⚔️Design a Leaderboard1300⚔️Design an Ordered Stream1320⚔️Design File System1320⚔️Moving Average from Data Stream1350⚔️Two Sum Data Structure1350⚔️Underground Travel System1350⚔️Stack with Increment1350⚔️Phone Directory1350
+ 35 more in the arena