Have an investigation on the Monoio runtime?
https://github.com/bytedance/monoio/blob/master/docs/en/benchmark.md
According to the official benchmark, the Monoio runtime's performance is better than the Glommio's.
Will you have an investigation on it?
i dont have time at the moment
The implementation https://github.com/botika/ntex/commit/e4aced391af2097c633078b2860cb8f30ef5ec77, but has some problems:
- need nightly and I have no idea how to put it only to compile in nightly, so that ntex in stable does not compile.
how is performance?
how is performance?
Well, I was still reviewing the implementation before putting it in the techempower benchmark environment. I don't know if I'll have time today.
Also with this change ntex only compiles in nightly and I don't see a way to include a dependency according to the version of Rust.
@botika You can conditionally apply a feature that runs only on nightly.
@botika In case you haven't seen these, I found a couple of online answers about how to conditionally compile a feature only for nightly. They are from 2019, so the syntax may have evolved or changed (I haven't personally tried them):
https://stackoverflow.com/questions/59542378/conditional-compilation-for-nightly-vs-stable-rust-or-compiler-version https://users.rust-lang.org/t/add-unstable-feature-only-if-compiled-on-nightly/27886
The benchmark is misleading. If you look at the source it compares multi-threaded tokio with thread per core glommio and monoio. Which is not how ntex work under the hood with tokio. Besides that the bench does not include abstraction over poll based api which ntex uses internally. And the cost of converting a completion future to a readiness future soundly can be high.(depend on the implementation) From my personal test I don't find io_uring suitable for network io handling in Rust (yet).