HTTP frameworks benchmark focused on D libraries
Adam D. Ruppe
destructionator at gmail.com
Sun Sep 27 20:39:32 UTC 2020
On Sunday, 27 September 2020 at 10:08:24 UTC, tchaloupka wrote:
> * new RAW tests in C to utilize epoll and io_uring (using
> liburing) event loops - so we have some ground base we can
> compare against
I fixed some buffering issues in cgi.d and, if you have the right
concurrency level that happens to align with the number of worker
processes... I'm getting incredible results. 65k rps.
It *might* just beat the raw there. The kernel does a really good
job.
Of course, it still will make other connections wait forever...
but my new event loop in threads mode is now also giving me a
pretty solid 26k rps on random concurrency levels with the
buffering fix.
I just need to finish testing this to get some confidence before
I push live but here it is on a github branch if you're curious
to look:
https://github.com/adamdruppe/arsd/blob/cgi_preview/cgi.d
Compile with `-version=embedded_httpd_threads
-version=cgi_use_fiber` to opt into the new event loop. But the
buffering improvements should register in all usage modes.
More information about the Digitalmars-d-announce
mailing list