3 ms·
How is the performance of Rocket? So far all the Rust web frameworks I've seen have pretty disappointing performances. I was expecting C++/Java/Go level of pe
by continuations 9y ago
How is the performance of Rocket?
So far all the Rust web frameworks I've seen have pretty disappointing performances.
I was expecting C++/Java/Go level of performance. Instead, Tokio & Iron turn out to be slower than many frameworks in Ruby, Python, PHP, JS:
https://www.techempower.com/benchmarks/#section=data-r14&hw=ph&test=fortune https://www.techempower.com/benchmarks/#section=data-r14&hw=...
https://www.techempower.com/benchmarks/#section=data-r14&hw=ph&test=query https://www.techempower.com/benchmarks/#section=data-r14&hw=...
https://www.techempower.com/benchmarks/#section=data-r14&hw=ph&test=update https://www.techempower.com/benchmarks/#section=data-r14&hw=...
- steveklabnik 9y ago* iron isn't using async io which is very important for Techempower * Tokio-minihttp is #4 overall on the plaintext benchmark there, which is sort of the "what is the max performance" benchmark I don't know of anyone who is really actively looking at Techempower and optimizing based on it, which is how you win benchmarks.
- moomin 9y agoHow is the async web server story looking? I keep thinking I'd like to port a small tornado app to Rust, but I'd rather it was fairly easy for some to verify it was behavioural similar. (Literally, I don't care about the performance, I just want that style of API.)
- steveklabnik 9y agoI don't know now much about tornado's API, so I can't say for sure. Right now, the async APIs are largely based on Futures. There's an experimental branch of the compiler that implements coroutines and therefore async/await on top of them though, so that syntax may or may not be coming in the future.