A structured master navigation cheatsheet for explaining the Radis in-memory key-value database project in technical interviews.
| File | Type | Duration | Primary Focus |
|---|---|---|---|
| intro | Speech | 1–2 mins | Crisp elevator pitch on built database capabilities + 3 follow-up hooks. |
| detailed | Speech | 4–5 mins | End-to-end architecture covering reactor loop, storage engines, and async pruning. |
| topic_01_event_loop_and_nonblocking_io | Deep Dive | 2–3 mins | Single-threaded reactor via poll(), non-blocking sockets, and state-driven connection IO. |
| topic_02_framing_pipelining_and_serialization | Deep Dive | 2–3 mins | Binary length-prefix framing, stream buffer slicing, pipelining loop, and type tagging. |
| topic_03_progressive_rehashing_hashtable | Deep Dive | 2–3 mins | Amortized $O(1)$ progressive rehashing, dual tables (newer/older), and pointer-to-pointer detaching. |
| topic_04_intrusive_data_structures_and_memory_layout | Deep Dive | 2–3 mins | Kernel-style intrusive structures, container_of math, flexible arrays, and zero-wrapper allocation. |
| topic_05_dual_indexed_sorted_sets_and_avl | Deep Dive | 2–3 mins | Dual-indexed ZSet, self-balancing AVL rotations, and subtree count (cnt) order-statistic rank queries. |
| topic_06_ttl_cache_eviction_and_thread_pool | Deep Dive | 2–3 mins | Bidirectional-indexed min-heap TTL eviction, idle DList pruning, and background worker thread pool. |
| code.html (Source Code Browser) | Interactive Tool | Interactive | 19 source files, 116 symbol definitions, line numbers, click-to-highlight, and quick-open navigation. |