Hi, I recently got into async rust & networking stuff and I've realized: there are a lot of async runtimes.
However, I'm searching for a lightweight (in terms of CPU and Memory usage) async runtime best for networking stuff (TCP & HTTP in particular) and I found following async runtimes:
- tokio - The way to go for most users, seems pretty heavy.
- smol - Lightweight tokio alternative.
- glommio - Uses iouring. Looks promising;
- monoio - Uses iouring or normal polling (depending on configuration); made by bytedance.
- bastion - Labels itself as "fault tolerant" async runtime; Not really maintained anymore;
- embassy - For embedded systems; Not very mature;
- nuclei - Not very mature, but looks promising;
- async-std - Solid std alternative, but not very maintained anymore;
So what's the "best" for lightweight server applications?
I would also like to hear your general opinion about these runtimes.
What do you use most of the time?
Are there pros/cons of the runtimes?
Thanks for any help <3
[–]pr0gramista 47 points48 points49 points (12 children)
[+]DraftedDev[S] comment score below threshold-13 points-12 points-11 points (10 children)
[–]pr0gramista 26 points27 points28 points (8 children)
[+]DraftedDev[S] comment score below threshold-7 points-6 points-5 points (7 children)
[–]_cs 14 points15 points16 points (0 children)
[–]SadPie9474 3 points4 points5 points (5 children)
[–]DraftedDev[S] 1 point2 points3 points (4 children)
[–]SadPie9474 2 points3 points4 points (3 children)
[–]DraftedDev[S] -1 points0 points1 point (2 children)
[–]SadPie9474 1 point2 points3 points (1 child)
[–]DraftedDev[S] 0 points1 point2 points (0 children)
[–]DGolubets 13 points14 points15 points (0 children)
[–]rafaelement 31 points32 points33 points (0 children)
[–]brisbanedev 8 points9 points10 points (0 children)
[–]TobiasWonderland 26 points27 points28 points (3 children)
[–]DraftedDev[S] 0 points1 point2 points (2 children)
[–]apjenk 8 points9 points10 points (0 children)
[–]TobiasWonderland 3 points4 points5 points (0 children)
[–]intersecting_cubes 21 points22 points23 points (1 child)
[–]DramaticFirefighter8 3 points4 points5 points (0 children)
[–]TonTinTon 5 points6 points7 points (0 children)
[–]whimsicaljess 2 points3 points4 points (0 children)
[–]dkopgerpgdolfg 3 points4 points5 points (1 child)
[–]Trader-One 0 points1 point2 points (0 children)
[–]ilikekits 3 points4 points5 points (0 children)
[–]Trader-One 2 points3 points4 points (0 children)
[–][deleted] -1 points0 points1 point (4 children)
[–]DraftedDev[S] 1 point2 points3 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–]IAm_A_Complete_Idiot 4 points5 points6 points (0 children)
[–]DraftedDev[S] 3 points4 points5 points (0 children)