CGIHTTPServer threading problems

2006-03-31 Thread Alvin A. Delagon
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?
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: CGIHTTPServer threading problems

2006-03-31 Thread infidel

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).

-- 
http://mail.python.org/mailman/listinfo/python-list