Appendix B · Part V: Reference
Glossary
Every term that this book defines at first use, gathered alphabetically with the chapter that introduces it.
A to C
- ACID
- Atomicity, consistency, isolation, and durability. The four properties that a database transaction provides. Chapter 7.
- AEAD
- Authenticated encryption with associated data. An encryption mode that provides confidentiality and integrity together. Chapter 15.
- Aggregate
- A cluster of domain objects with one root, forming a transactional consistency boundary. Chapter 6.
- Amdahl's law
- Speedup equals 1 divided by ((1 minus p) plus p over N), where p is the parallel fraction. Chapter 4.
- Anticorruption layer
- A translation layer that keeps a foreign model out of a bounded context. Chapter 6.
- ARIES
- The recovery design that most relational engines follow: write-ahead logging, repeating history during redo, and logging undo actions. Chapter 7.
- Arithmetic intensity
- Floating point operations performed per byte moved from memory. Chapter 1 and Chapter 13.
- Backpressure
- A signal that travels from a slow consumer to a fast producer, telling it to slow down. Chapter 11.
- Bloom filter
- A bit array plus several hash functions that answers set membership with no false negatives and a tunable false positive rate. Chapter 3.
- Bounded context
- The scope inside which one domain model and one language hold. Chapter 6.
- Bufferbloat
- Added latency caused by a deep network buffer that absorbs excess traffic instead of dropping it. Chapter 9.
- Bulkhead
- A per-dependency resource pool that stops one slow dependency from consuming every thread. Chapter 11.
- Burn rate
- The multiple of error budget consumption that exhausts the budget exactly at the end of the window. Chapter 14.
- CAP theorem
- During a network partition, a replicated system cannot have both linearizability and total availability. Chapter 8.
- Cardinality
- The number of distinct time series, which is the product of the distinct values of every label. Chapter 14.
- Cache line
- The unit of transfer between memory levels. 64 bytes on x86-64 and most Arm cores. Chapter 1.
- CDC
- Change data capture. Reading a database write-ahead log and emitting one event per row change. Chapter 12.
- Circuit breaker
- A component that stops calls to a failing dependency, with closed, open, and half-open states. Chapter 11.
- CNI
- Container Network Interface. The plugin contract for creating a pod's network interface. Chapter 10.
- Coalescing, memory
- Combining the memory accesses of a GPU warp's lanes into one transaction. Chapter 4.
- Connascence
- A graded measure of coupling, from name through type, meaning, position, algorithm, execution, timing, value, and identity. Chapter 6.
- Consistent hashing
- A key-to-node mapping that remaps only the keys of a departed node when membership changes. Chapter 9.
- Continuous batching
- Inference scheduling that admits new requests into freed batch slots at every decode step. Chapter 13.
- Coordinated omission
- A measurement error where a load generator stops sending during a stall, omitting the worst samples. Chapter 14.
- CQRS
- Command query responsibility segregation. Separate models for writes and reads. Chapter 6.
- CRDT
- Conflict-free replicated data type. A type whose merge is commutative, associative, and idempotent, so replicas converge. Chapter 8.
- CRI
- Container Runtime Interface. The gRPC contract between the kubelet and a high-level container runtime. Chapter 10.
- CXL
- Compute Express Link. A cache-coherent interconnect for attached memory over the PCIe electrical layer. Chapter 1.
D to I
- Deadline propagation
- Passing an absolute expiry time through a call chain so each hop knows its remaining budget. Chapter 9.
- Deoptimization
- Rewriting an optimized stack frame back into interpreter form when a speculation fails. Chapter 5.
- Disaggregated serving
- Running inference prefill and decode phases on separately sized machines. Chapter 13.
- eBPF
- A virtual machine inside the Linux kernel that runs user-supplied programs at defined hooks, after a static analyzer proves that they terminate and stay in bounds. Chapter 2.
- EEVDF
- Earliest Eligible Virtual Deadline First. The Linux normal-class scheduler since kernel 6.6. Chapter 2.
- Envelope encryption
- Encrypting data with a per-object key and encrypting that key with a key encryption key. Chapter 15.
- Error budget
- The allowed shortfall from a service level objective, which is one minus the objective. Chapter 14.
- Event sourcing
- Storing the sequence of changes as the source of truth, with current state as a fold over them. Chapter 6.
- Exactly-once
- A guarantee that the visible effect happens once, whatever fails. Not the same as delivering a message once. Chapter 12.
- External memory model
- A cost model that counts block transfers of size B against a fast memory of size M. Chapter 3.
- False sharing
- Two threads write different variables that share one cache line, so the line moves between cores. Chapter 1.
- FLP
- The Fischer, Lynch, and Paterson result: no deterministic algorithm solves consensus in an asynchronous system with one crash. Chapter 8.
- Futex
- The Linux primitive under a mutex, which enters the kernel only when a thread must wait. Chapter 4.
- Goodput
- Throughput restricted to the work that met its latency target. Chapter 13.
- Grouped query attention
- Sharing one key and value head across several query heads to shrink the key and value cache. Chapter 13.
- Hazard pointer
- A published pointer that tells a reclaimer which nodes a thread currently reads. Chapter 4.
- Hexagonal architecture
- Ports and adapters. The domain defines interfaces and infrastructure implements them, so every dependency points inward. Chapter 6.
- HLC
- Hybrid logical clock. A timestamp with a physical component and a logical counter. Chapter 8.
- HNSW
- Hierarchical Navigable Small World. A layered proximity graph for approximate nearest neighbor search. Chapter 3.
- Idempotent
- Safe to run twice. Running the operation again produces the same effect as running it once. Chapter 8.
- Inline cache
- A call site record of observed types, which lets a compiler inline a virtual call behind a type guard. Chapter 5.
- io_uring
- A Linux interface with shared submission and completion rings, which reports completion and amortizes crossings. Chapter 2.
K to Q
- KPTI
- Kernel page table isolation. A Meltdown mitigation that gives the kernel and user space separate page tables. Chapter 2.
- Latch crabbing
- Releasing a parent node's latch as soon as the child is known to be safe during a tree descent. Chapter 7.
- Linearizability
- Every operation appears to take effect at one instant between its invocation and its response, respecting real time. Chapter 8.
- Little's law
- Concurrency equals arrival rate times time in the system. Chapter 4.
- LSM-tree
- Log-structured merge tree. Writes go to memory, flush to immutable sorted files, and merge in background compaction. Chapter 7.
- Metastable failure
- A failure state that sustains itself after the trigger is gone, because the state generates the load that keeps it there. Chapter 16.
- MESI
- The cache coherence protocol family with Modified, Exclusive, Shared, and Invalid line states. Chapter 1.
- MGLRU
- Multi-generational least recently used. The Linux page reclaim design since kernel 6.1. Chapter 2.
- ML-KEM
- The NIST-standardized post-quantum key encapsulation mechanism, FIPS 203. Chapter 15.
- MVCC
- Multi-version concurrency control. Keeping several row versions so readers never block writers. Chapter 7.
- NAPI
- The Linux driver mechanism that disables receive interrupts under load and polls instead. Chapter 2.
- NUMA
- Non-uniform memory access. Memory attached to sockets, so local and remote access differ in cost. Chapter 1.
- Outbox pattern
- Writing an event to a table in the same transaction as the state change, then relaying it. Chapter 6.
- PACELC
- If partitioned, choose availability or consistency. Else, choose latency or consistency. Chapter 8.
- PagedAttention
- Managing the key and value cache in fixed-size blocks with a per-sequence block table. Chapter 13.
- Prefill
- The inference phase that processes the whole prompt at once, which is compute bound. Chapter 13.
- PSI
- Pressure Stall Information. Kernel counters for the time that tasks waited on memory, I/O, or CPU. Chapter 2.
- QUIC
- A transport over UDP with per-stream reliability, a connection identifier, and an integrated cryptographic handshake. Chapter 9.
R to Z
- RAII
- Resource acquisition is initialization. Tying a resource lifetime to an object lifetime. Chapter 5.
- Raft
- A consensus algorithm structured as leader election, log replication, and safety rules. Chapter 8.
- RCU
- Read-copy-update. A scheme where readers do no synchronization and writers publish new versions. Chapter 4.
- Retry budget
- A cap on retries as a fraction of total requests, which keeps the retry amplification loop below gain one. Chapter 11.
- RSS
- Receive side scaling. Hashing packet headers in the network card to select a hardware queue. Chapter 2.
- RUM conjecture
- A data structure optimizes at most two of read overhead, update overhead, and memory overhead. Chapter 7.
- Saga
- A sequence of local transactions with compensating business actions, replacing a distributed transaction. Chapter 6.
- Sched_ext
- A Linux scheduling class whose policy is supplied by an eBPF program. Chapter 2.
- Sequential consistency
- All processes see one order of operations, consistent with each process's own program order. Chapter 8.
- SIMT
- Single instruction multiple threads. The GPU model where a warp executes one instruction across its lanes. Chapter 4.
- SLI, SLO
- Service level indicator and objective. A measurement of quality and a target for it. Chapter 14.
- SoA
- Structure of arrays. One array per field, which improves locality and vectorization for field-wise access. Chapter 1.
- Speculative decoding
- Using a draft model to propose tokens and the full model to accept or reject them in one pass. Chapter 13.
- SPIFFE
- A workload identity standard with URI-named identities carried in short-lived certificates. Chapter 15.
- SSI
- Serializable snapshot isolation. Snapshot isolation plus dependency tracking that aborts non-serializable outcomes. Chapter 7.
- Swiss table
- A hash table that stores seven hash bits per slot in a control byte array and probes sixteen slots per SIMD compare. Chapter 3.
- Tail-based sampling
- Deciding whether to keep a trace after it completes, so errors and slow traces are kept. Chapter 14.
- TLB
- Translation lookaside buffer. The cache of virtual to physical address translations. Chapter 1.
- TSO
- Total store order. The x86-64 memory model, where only a store followed by a load to a different address reorders. Chapter 4.
- Vector clock
- One counter per node, which distinguishes happened-before from concurrent. Chapter 8.
- Watermark
- An assertion in a stream that no event earlier than a given time will arrive. Chapter 12.
- Write amplification
- Bytes written to the device per byte the user wrote. Chapter 7.
- XDP
- eXpress Data Path. An eBPF hook inside the network driver, before socket buffer allocation. Chapter 2.
- Zero trust
- An architecture with no implicit trust from network location, requiring continuous verification of every request. Chapter 15.
- ZGC
- A Java collector that stores metadata in pointer bits and repairs references in a load barrier, giving pause times independent of heap size. Chapter 5.