Re: CGIHTTPServer threading problems
Available news archives: comp.lang.tcl - comp.lang.python - comp.security.firewalls - sci.crypt - comp.lang.php - comp.lang.javascript
Google
 
Web news.hping.org


comp.lang.python archive

Re: CGIHTTPServer threading problems

From: infidel <saint.infidel@gmail.com>
Date: Fri Mar 31 2006 - 18:00:55 CEST

Alvin A. Delagon wrote:
> I'm a simple python webserver based on CGIHTTPServer module:
>
> import CGIHTTPServer
> import BaseHTTPServer
> import SocketServer
> import sys
> import SQL,network
> from config import *
>
> class
> ThreadingServer(SocketServer.ThreadingMixIn,BaseHTTPServer.HTTPServer):
> pass
>
> cfg = params()
> print "XBOX Server started on port %s. Press Ctrl+C to kill Server" %
> cfg.port
> server =
> ThreadingServer((cfg.name,cfg.port),CGIHTTPServer.CGIHTTPRequestHandler)
> try:
> while 1:
> sys.stdout.flush()
> server.handle_request()
> except KeyboardInterrupt:
> print "Server killed"
>
>
> The my cgi scripts are stored in the cgi-bin folder. One cgi script in
> particular implements multi-threading and is supposed to be asynchronous
> but it's not working. The browser that requests on the cgi script tends
> to wait until the cgi script is done. I checked multi-threaded cgi
> script but I'm 100% percent sure that it has no problem since it worked
> as a mod_python script before. Anyone came across with this problem?

CGI doesn't run asynchronously. All you've done with a multithreaded
CGI server is have each CGI script run on a separate thread. But that
doesn't change the fact that a browser is going to sit there and wait
as the CGI script runs to completion (which is how the server knows
it's done).
Received on Sun Apr 30 21:47:30 2006