s3rius / rustus

TUS protocol implementation in Rust.
https://s3rius.github.io/rustus/
MIT License
150 stars 13 forks source link

Rustus has been rewritten from scratch #145

Closed s3rius closed 10 months ago

s3rius commented 10 months ago

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:

s3rius commented 10 months ago

The core functionality is ready. Everything what's left, will be added within subsequent PRs.