Is Rust a good choice for web services?

  • Go has all of that code in its runtime. Rust does not. Hence, you need to get that code somehow, and packages are how you do that.

    Your lock file should ensure that the exact same versions of everything are used a year from now. So it should work with no hell. That being said, with async/await five weeks away, the ecosystem is about to get a massive upgrade, and so you will be behind unless you built this all with the pre-release versions of stuff. That said, unless you’re doing active development on the project, that shouldn’t matter, and if you are, you can schedule some time to do the upgrade, like anything else.

  • I think the philosophy of Rust is to have a minimal micro-kernel standard library, allowing developers to choose crates that implement solutions in ways that fit their particular problem space. I like that approach more than a 'one true way' approach.

    Both approaches have their advantages and crates approach can lead to things like the left-pad problem experience, where the loss of a single one-function package in the NodeJS ecosystem resulted in thousands of projects breaking, including NodeJS itself and Babel.

    All in all though, I still like the crate approach. The trick is for developers to not publish trivial crates, and to not allow unpublishing except in extreme circumstances (i.e., for cybersecurity reasons).

  • Could you please elaborate on problem you are working on? How many rps do you want your service to handle? Thank you

  • I’m curious, what library do you use to handle the REST requests ?

  • If youre a solo dev, sure, why not?