He estado viendo este error cada vez más últimamente. Estoy usando el navegador Chrome dev-channel en Ubuntu 10.10. Cuando actualizo una página web, el dev_appserver parece bloquearse. Después de un tiempo de espera, si completa la solicitud.¿Por qué dev_appserver.py (servidor de desarrollo de App Engine) está pendiente de una solicitud?
Si pulse Ctrl-C en la ventana de terminal de servidor de aplicaciones, que parece "unstick" el servidor después de mostrar esta traza de vuelta:
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
Curiosamente, cuando traje Firefox para ver si está relacionado a Solo en Chrome, el problema desapareció (tanto en Firefox como en Chrome).
Estoy interpretando esto como el navegador que mantiene abierta la solicitud anterior al no extraer completamente todos los bytes de la respuesta. Como dev_server es de subproceso único, no procesará ninguna otra solicitud hasta que se agote el tiempo de espera anterior.
¿Alguien tiene alguna otra idea aquí? Es extremadamente molesto cuando sucede esto, ya que tengo que matar y reiniciar el app_devserver para seguir.
Supongo que Chrome está utilizando conexiones keepalive: ha leído toda la respuesta, pero mantiene la conexión abierta para acelerar las solicitudes posteriores. No estoy seguro de cómo deshabilitar esto por servidor. –
¿Parece que está utilizando una versión no comercial de Chrome? ¿El establo actual hace lo mismo? He estado usando Chrome y desarrollándome para GAE sin problemas. – Matt
Por extraño que parezca, esto solo ocurre cuando se ejecuta en una ventana de incógnito en Chrome ... –