Ho visto questo errore sempre di più ultimamente. Sto usando il browser Chrome-channel su Ubuntu 10.10. Quando aggiorno una pagina Web, il server dev_appserver sembra bloccarsi. Dopo un timeout, se completa la richiesta.Perché dev_appserver.py (server di sviluppo App Engine) è in attesa di una richiesta?
Se digito CTRL-C nella finestra del terminale appserver, sembra a "scollare" il server dopo la visualizzazione di questa traccia indietro:
Exception happened during processing of request from ('192.168.1.19', 48238)
Traceback (most recent call last):
File "/usr/local/lib/python2.5/SocketServer.py", line 222, in handle_request
self.process_request(request, client_address)
File "/usr/local/lib/python2.5/SocketServer.py", line 241, in process_request
self.finish_request(request, client_address)
File "/usr/local/lib/python2.5/SocketServer.py", line 254, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/local/google_appengine/google/appengine/tools/dev_appserver.py", line 3123, in __init__
BaseHTTPServer.BaseHTTPRequestHandler.__init__(self, *args, **kwargs)
File "/usr/local/lib/python2.5/SocketServer.py", line 522, in __init__
self.handle()
File "/usr/local/lib/python2.5/BaseHTTPServer.py", line 316, in handle
self.handle_one_request()
File "/usr/local/lib/python2.5/BaseHTTPServer.py", line 299, in handle_one_request
self.raw_requestline = self.rfile.readline()
File "/usr/local/lib/python2.5/socket.py", line 346, in readline
data = self._sock.recv(self._rbufsize)
KeyboardInterrupt
Stranamente, quando ho portato fino Firefox per vedere se è legato alla Solo Chrome, il problema è andato via (sia su Firefox che su Chrome).
che sto interpretando questo come il browser mantenendo la precedente richiesta aperta non tirando completamente tutti i byte dalla risposta. Poiché il server dev è single-threaded, non elaborerà ulteriori richieste fino a quando il vecchio timeout.
Qualcuno ha altre informazioni qui? È estremamente fastidioso quando ciò accade, in quanto devo uccidere e riavviare app_devserver per continuare.
La mia ipotesi è che Chrome utilizzi connessioni keepalive: viene letta l'intera risposta, ma è in grado di mantenere aperta la connessione per accelerare eventuali richieste successive. Non sono sicuro di come disabilitarlo in base al server. –
Sembra che tu stia usando una versione non rilasciata di chrome? La stalla attuale fa la stessa cosa? Utilizzo Chrome e sviluppo per GAE senza problemi. – Matt
Stranamente per me questo sembra accadere solo quando si esegue in una finestra di navigazione in incognito in Chrome ... –