uazu / stakker

A lightweight low-level single-threaded actor runtime
https://uazu.github.io/stakker/
Apache License 2.0
167 stars 9 forks source link

Glommio: Consider writing interface code to run on top of it #28

Open uazu opened 2 years ago

uazu commented 2 years ago

Glommio has a similar single-threaded approach to Stakker for handling load, i.e. shard it or load-balance it at a high level, instead of load-balancing across threads at a low level. However Glommio takes things a good deal further, and its maintainers have put in the necessary work to interface to Hyper and so on. However it only works on recent Linux kernels (5.8+) and supports no other platforms, so it is rather a niche runtime. Adding Stakker to it would be a niche on a niche, i.e. to support Glommio users who also prefer the actor model instead of async/await. However the combination could be really high performance. Also interfacing to Glommio would be a good learning experience.

Realistically, I think this is not going to happen unless someone has a specific interest in this and is willing to fund it, since supporting all platforms would be preferable. However maybe it's possible to copy ideas and workarounds from Glommio where they have solved problems of getting crates from the general async/await ecosystem to work single-threaded.