Over time I already grew tired of insane software complexity of modern software development, that requires 300MB RAM just to return Hello world on HTTP server in Python and 500MB Docker image as an extra.
80's is a minimalistic server that leverages Lua to handle network traffic and is only 280kB when compiled yet still achieving 166 000 req/s on single core or 300 000 req/s on 4 cores while being fully asynchronous and free of any locks.
* Measurements were taken with 1 000 000 requests @ 500 parallel connections using keep-alive. Performance without keep-alive is 55 000 req/s on both single or multi-core. CPU: i7-1165G7 @ 2.80GHz
To run the server, execute bin/80s server/simple_http.lua, optionally bin/80s server/simple_http.lua -p 8080 -c 4 to specify the port and number of CPUs (workers). After this, the server is running and can be reloaded by calling net.reload() from within Lua code.
To gather multiple parallel promises and get their overall results once all of them execute, you can use aio:gather(promises...)