I've written (for internal use) an HTTP daemon in Pike, using roughly the following featureset: - Mainly meant to run (custom) pike modules processing requests. - Also serves static content (through a simple config file). - Supports multiple virtual servers, with multiple mountpoints each. - Supports database connection pools. - Supports integrated memory caching. - Uses the Shuffler for all network I/O. - Supports websockets. - Gzips output automatically. - Uses statically precompiled .gz files if available and new enough. - It has been fondly baptised as a "Spike" daemon. - It integrates well with an nginx reverse proxy (and thus I did not add SSL support so far), which then adds HTTP/2 and SSL support. - It only runs on Pike 8.1, not Pike 8.0 (mostly because of the broken Shuffler in 8.0). - The whole source is about 15 KB (5 KB when gzipped).
If there is interest, I'll clean up the code a bit more, and make it available via a git repo somehwere.