Backend Engineering · Concurrency · Distributed Systems
Notes on backend engineering, concurrency, distributed systems, data systems, and software engineering practice.
Start Here
All Series →- Concurrency ProgrammingActive
Starts from the boundaries of concurrency problems, then builds toward hardware memory models, language-level concurrency semantics, and the mechanisms behind common concurrency primitives.
10 articles · Java · JUC
Latest Articles
All Articles →- Concurrency Programming (1.5): The Operating System Layer — Threads, Schedulers, and Runtime Scheduling
Following Java platform and virtual threads, Go G-M-P, and CPython threads from their runtime representations to OS threads and ultimately CPU execution.
- Concurrency Programming (1): Start with the Hardware — From count++ to Atomicity, Visibility, and Ordering
Starting from the von Neumann architecture and instruction execution, this article follows count++ down to the hardware-level problems of atomicity, visibility, and ordering.
- Concurrency Programming (2): Language Memory Models — Rules Programmers Can Rely On
Moves from hardware memory models back to the language layer: why languages need their own concurrency semantics, and what Java, Go, and CPython guarantee to concurrent programs.
- Concurrency Programming (0): The Problem Space and Scope
Defines the scope as concurrency within a single process on a single machine, then connects shared variables, shared memory, message passing, language concurrency semantics, and hardware implementation.
- Concurrency Programming (4): How Mutexes Are Implemented — From Runtime to CPU
Traces the actual implementation paths of Java synchronized, Go sync.Mutex, and CPython threading.Lock to show how mutexes rely on atomic operations, memory ordering, and waiting and wake-up mechanisms.
Engineering Knowledge
All Notes →Projects
All Projects →- DownKitBuilding
A media downloader focused on video, with support for audio and other media resources.
Video Downloads · Media Tools · Go - Personal Blog SystemBuilding
A personal blog system built and evolved around long-term knowledge accumulation, technical writing, and content distribution.
Blog · Astro · Knowledge Management