This PR is a complete rewrite of Rustus from the ground up.
I tried to reach actix team that they have memory leaks somewhere inside. I made lots of tweaks and changes, but the memory usage was still huge. Later I found out that axum framework can produce almost the same throughput, but it's memory usage is much effective. So, I decided to switch to it.
To decrease memory usage also, we removed all boxes from the app's state, now we depend on nightly channel to use non-boxed async function in traits. Ref: https://github.com/rust-lang/rust/pull/115822.
This PR is a complete rewrite of Rustus from the ground up.
I tried to reach actix team that they have memory leaks somewhere inside. I made lots of tweaks and changes, but the memory usage was still huge. Later I found out that axum framework can produce almost the same throughput, but it's memory usage is much effective. So, I decided to switch to it.
To decrease memory usage also, we removed all boxes from the app's state, now we depend on nightly channel to use non-boxed async function in traits. Ref: https://github.com/rust-lang/rust/pull/115822.
Here's the transition roadmap: