WSGI Implementations
There's been a number of implementations of WSGI in the last
week or so:
- Alan Kennedy released version 0.2 of modjy, which is a WSGI server
that runs in a Java servlet container (using Jython). He's had to
deal with some of the issues of implementing WSGI under Python 2.1,
particularly iterators, but he's done some work to mitigate those
problems (in part by simulating the Python 2.2 interator protocol).
- Peter Hunt has implemented a Twisted Resource version of the WSGI
server, in addition to some other miscellaneous WSGI code and tests.
It's at svn://colorstudy.com/trunk/WSGI/phunt, but I
can't get to that site at the moment. Using the Twisted server just
requires an import and a single method call (once Twisted is
installed, of course) -- doesn't even seem to require mktap. For all
of these the setup is fairly simple.
- Phillip Eby (author of the WSGI PEP) has converted his web code
in PEAK (Python
Enterprise Application Kit) to WSGI. It includes a CGI, FastCGI, and
SimpleHTTPServer implementation. FastCGI is a protocol where the
webserver (e.g., Apache) talks to a separate long-running Python
process. SimpleHTTPServer is a standard
library module that implements a stand-alone HTTP server. Read
more in his mail to Web-SIG. The FastCGI server looks
particularly interesting to me.
I think there's a good working set of servers now. To fill it out
there should also be a mod_python
server, an ASP/IIS server, and maybe a Medusa server. I can't think
of any other servers that we really need, except maybe a server for
interactive debugging, and perhaps some other non-production "tool"
servers.
Really the next step is to get some more frameworks ported. I'm
really hoping other frameworks can also be factored into
framework-neutral portions, like I've been working with in WSGI
Webware. But even if not, for most frameworks it should be fairly
easy to port the framework in one big chunk -- any framework that
supports a non-CGI option should be easy to port.
Update: the files from st0rm.hopto.org are now in the colorstudy repository.
Created 13 Oct '04
Modified 14 Dec '04