Hi all,
I'd like to announce a (slightly experimental) release: wai-handler-scgi. SCGI is an alternative to CGI and FastCGI; like FastCGI, it allows you to have persistent processes. However, unlike FastCGI, it's a very simple protocol to implement. This package requires no external C libraries. SCGI is supported by most web servers that support FastCGI (Apache, Lighttpd, Nginx, Cherokee, I'm sure others), so this can be an alternate hosting method.
My tests showed no problems with the package, but as this is the first release, you may not want to host production sites on it. There also plenty of room for optimizations, though my testing showed it to be competitive with FastCGI.
I've also released new versions of wai-extra and wai-handler-fastcgi to provide a new feature: CGI sendfile support. Some servers allow you to specify an HTTP header (X-Sendfile, X-LIGHTTPD-send-file, etc) and then they will send the specified static file via a sendfile system call. This can have big performance advantages. The new function is called runSendfile, and is available in all three packages.
The code for wai-handler-scgi is very short; I encourage anyone who has experience optimizing socket IO to have a look and fix up the performance bottlenecks.
Cheers,
Michael