8
我最近看到這個錯誤越來越多。我在Ubuntu 10.10上使用Chrome開發通道瀏覽器。當我刷新網頁 - dev_appserver似乎掛起。超時後,如果完成請求。爲什麼dev_appserver.py(App Engine dev服務器)等待請求?
如果我在應用服務器終端窗口中輸入CTRL-C,它似乎「扯去」服務器顯示該回溯後:
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
奇怪的是,當我長大的Firefox,看看它是否涉及到問題消失了(在Firefox和Chrome上)。
我正在解釋這是因爲瀏覽器保持先前的請求打開不完全拉響應的所有字節。由於dev_server是單線程的,因此它將不會處理任何進一步的請求,直到舊的超時爲止。
任何人有任何其他的見解嗎?發生這種情況時非常煩人,因爲我必須殺死並重新啓動app_devserver才能繼續。
我的猜測是,Chrome正在使用Keepalive連接 - 它讀取整個響應,但它保持打開連接以加速後續請求。我不確定如何在每臺服務器上禁用此功能。 – 2011-02-04 01:34:42
聽起來像你正在使用非發佈版本的鉻?當前的穩定器是否也在做同樣的事情?我一直在使用chrome併爲GAE開發而沒有任何問題。 – Matt 2011-02-04 03:33:49