For a long time, Rust == performance because a _lot_ of people moved into Rust that had never really done programming with a concurrency-sane compiled programming language. For them, Rust was synonymous with performance!
Many supporting crates reinforced this. Rayon, Tokio (though not "performant", it was an improvement over naive impl), etc made jumping from hello world to parallel/concurrent execution pretty simple.
But I'm glad to see the downturn on that hype cycle.
Nothing is wrong with tokio, actually. I chose the wrong word
async != performance
async == concurrency
Unless you face a specific kind of slowdown, concurrency, and therefore async (and therefore tokio) is not a panacea. Many do face that slowdown, so for many it is.
Many supporting crates reinforced this. Rayon, Tokio (though not "performant", it was an improvement over naive impl), etc made jumping from hello world to parallel/concurrent execution pretty simple.
But I'm glad to see the downturn on that hype cycle.