Tokio Blog: Making the Tokio scheduler 10x faster.
The major theme is "reduce." After all, there is no code faster than no code!
- reducing allocation
- reducing copying
- reducing data movement
- reducing cache miss
- reducing synchronization
- reducing contention
Reducing tail latencies with automatic cooperative task yielding
Async code should never spend a long time without reaching an .await.
A good rule of thumb is no more than 10 to 100 microseconds between each .await. That said, this depends on the kind of application you are writing.
Rust RFC 0230 - remove runtime, 2394 - async/await, 2592 - futures