Understanding Layer 4 vs Layer 7 Load Balancers
Key differences, pros and cons, and implementations of Layer 4 and Layer 7 load balancers in backend networking.
Socket Sharding: Multiple Listeners on the Same Port
Lecture notes on using socket sharding (SO_REUSEPORT) for multiple listeners, acceptors, and readers on one port to improve scalability.
Multiple Threads Accepting on One Socket
Lecture notes on using multiple accepter threads on a single listening socket, discussing how the OS handles accept calls and the trade-offs involved.
Making Backend Requests Safe: Understanding Idempotency
Lecture notes on backend idempotency: how to safely retry requests without duplicating actions, with examples and implementation tips.
Single Listener/Acceptor/Reader Thread Pattern (Node.js Example)
Examining the single listener/acceptor/reader pattern in backend systems using Node.js's single-threaded model.
Thread Execution Patterns: From Single Listener to Load Balanced Workers
Comparing three key backend threading models: basic listener-acceptor-reader separation, multiple reader threads, and advanced message load balancing with worker threads.
Test Input Generation with Java PathFinder
A personal reflection on using Java PathFinder (JPF) to automatically generate test inputs for complex data structures.
Understanding How Socket Data Is Read and Sent in Backend Systems
This lecture explores the lifecycle of socket data in backend applications — from connection establishment to data buffering, reading, and sending, including kernel-level details.
117 post articles, 15 pages.