The map
- Not started
- In progress
- Done
- Builds on
- 01OwnershipMoves, borrows, lifetimes, the heap0/5
- 02Types that do the workEnums, errors, traits, iterators0/4
- 03Beyond one threadSend and Sync, async, unsafe0/3
- 04Next: system designSame ideas, at service scale
- BackpressureLibrary ↗A bounded tokio::sync::mpsc channel makes the sender wait when the receiver falls behind. The same rule between services: bound every queue.
- TimeoutLibrary ↗tokio::time::timeout drops the inner future when time runs out, which cancels it. Put a deadline on every call that crosses the network.
- BulkheadLibrary ↗A tokio Semaphore per dependency caps how many requests can wait on it at once, so one slow backend can't take every task.
Everything here is about stable Rust and the 2024 edition (Rust 1.85 and later). The examples were compiled and run on the official Rust Playground with Rust 1.99.1 and, for the async topic, Tokio 1.53. Where a feature is newer than the 2024 edition (let chains in 1.88, for example) the topic says so.