Recently I've been writing a good amount of rust, looking for libs to help out, and have been pleasantly surprised at the depth of the Rust standard library at this point!
I started trying to use something like tokio for async stuff, but found that Rust's standard lib threading primitives were already nice and numerous enough to get a lot of work done.
The rust programming language book has a nice little project of building a multithreaded HTTP web server from scratch. Of course you don't necessarily want to do this for everything, but the fact that a lot of the primitives are present and with good abstractions is commendable!
Go's stdlib stuff for web servers is obviously much easier to get rolling though.
That's amazing! I have the Rust Book but never finished it all the way through, I'm definitely looking forward to this, I had no idea it takes full advantage of other packages.
It does not (well, historically it does not, I haven't checked it out in a while) use other packages. You build one yourself with the standard library. It's expressly about learning via a bigger project, not something you'd use in production. That'd be a waste, just use axum, and focus on writing your application, not on building a (very minimal and incomplete) http/1.1 implementation.
That's fine, it's the kind of project I've been meaning to do for myself, so wherever it leaves off at... chances are high I'll continue for my own personal learning.
I started trying to use something like tokio for async stuff, but found that Rust's standard lib threading primitives were already nice and numerous enough to get a lot of work done.
The rust programming language book has a nice little project of building a multithreaded HTTP web server from scratch. Of course you don't necessarily want to do this for everything, but the fact that a lot of the primitives are present and with good abstractions is commendable!
Go's stdlib stuff for web servers is obviously much easier to get rolling though.
https://doc.rust-lang.org/stable/book/ch20-00-final-project-...