Non-evil multithreaded WSGI server?
gh at ghaering.de
Wed Aug 27 10:20:14 CEST 2008
Gabriel Genellina wrote:
> En Tue, 26 Aug 2008 03:20:53 -0300, Gerhard Häring <gh at ghaering.de>
>> In a recent experiment I've done this:
>> from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
>> from wsgiref.simple_server import make_server, demo_app
>> from SocketServer import ThreadingMixIn
>> # Let's make a WSGI server that can use multiple threads.
>> class ThreadedHTTPServer(ThreadingMixIn, HTTPServer):
>> """Handle requests in a separate thread."""
>> # Evil! ;-)
>> from wsgiref.simple_server import WSGIServer as MyWSGIServer
>> MyWSGIServer.__bases__ = (ThreadedHTTPServer,)
>> Now I wonder if there's a less evil way that does not involve copy &
>> paste of the WSGIServer code (only couple of lines, but I hate
> I'm not sure I understand completely the question - does the code below
> work for you?
> class MyWSGIServer(ThreadingMixIn, wsgiref.simple_server.WSGIServer):
Yes, it does!
I was totally on the wrong track. Of course the ThreadingMixin can also
be "mixed in" later in the chain.
More information about the Python-list