System Design
$ kubectl get deployments --all-namespaces
6 posts
- 01 Kafka Notes
An overview of Apache Kafka's architecture, storage, distributed coordination, and delivery guarantees for real-time data streaming.
- 02 Takeaways from Google File System!
Key takeaways from the Google File System paper covering its architecture, scalability, fault tolerance, and consistency model for large-scale distributed storage.
- 03 Cassandra in less than 5 mins
A quick guide to Apache Cassandra covering its storage engine, partitioning, leaderless replication, and fault tolerance for write-heavy applications.
- 04 Design a Webcrawler
A system design walkthrough for building a scalable web crawler covering URL frontier, HTML fetching, deduplication, fault tolerance, and data partitioning.
- 05 Two-phase Locking (2PL)
An explanation of two-phase locking as a pessimistic concurrency control mechanism, covering shared and exclusive locks, deadlock handling, and trade-offs.
- 06 Design WhatsApp
A system design breakdown for messaging applications like WhatsApp and Messenger, covering WebSockets, data partitioning, push notifications, and fault tolerance.