Release: serverino - please destroy it.
Andrea Fontana
nospam at example.com
Sun May 8 21:32:42 UTC 2022
Hello!
I've just released serverino. It's a small & ready-to-go
http/https server.
Every request is processed by a worker running in an isolated
process, no fibers/threads, sorry (or thanks?)
I did some tests and the performance sounds good: on a local
machine it can handle more than 100_000 reqs/sec for a simple
page containing just "hello world!".Of course that's not a good
benchmark, if you can help me with other benchmarks it would be
much appreciated (a big thanks to Tomáš Chaloupka who did some
tests!)
I'm trying to keep it simple and easy to compile. It has no
external deps in its base configuration and only one external
library (libretls) is required if you need/want to enable https.
For your first project you need just three lines of code as you
can see here:
https://github.com/trikko/serverino/
I didn't implement a traditional router for uris as probably many
of you expected. I use a different approach. Check out this
example:
https://github.com/trikko/serverino/#defining-more-than-one-endpoint
This allows you to do some interesting things giving higher or
lower priority to each endpoint (for example you can force
something to always running first like redirect, logging, checks
on login...)
Instead of using a lot of different UDAs to set routing rules,
you can simply write them in your endpoint's body and exit from
it to pass to the next endpoint.
Please help me testing it, I'm looking forward to receiving your
shiny new issues on github.
Dub package: https://code.dlang.org/packages/serverino
Andrea
More information about the Digitalmars-d-announce
mailing list