Flasche langsam beim Abrufen von Post-Daten von Anfrage?

Ich schreibe eine Kolbenanwendung, die POST-Anforderungen mit JSON-Daten akzeptiert. Ich habe große Unterschiede in der Antwortzeit festgestellt, die auf der an die Anwendung übergebenen Datengröße beruhen. Nach dem Debuggen habe ich das Problem auf die Zeile eingegrenzt, in der ich JSON-Daten vom Anforderungsobjekt abgerufen habe. Es ist möglicherweise wichtig zu beachten, dass die Tests auf dem Flask-Entwicklungsserver durchgeführt wurden.

start = time.time()
resp = json.dumps(request.json)
return str(time.time() - start)

Ich habe diese Zeile zeitlich festgelegt und für Daten von 1024 (wahrscheinlich kein Zufall) und weniger Zeichen dauerte dies 0,002 Sekunden und für alles über 1024 über 1 Sekunde! Was passiert hier? Ist dies die Einschränkung des Entwicklungsservers?

BEARBEITEN: Gleiches gilt für das Abrufen von POST-Daten über request.form.get ('somedata') mit Inhalten über 1024

BEARBEITEN: Ich konnte das Problem nicht mit demselben Beispiel replizieren, das von Apache bereitgestellt wurde

BEARBEITEN:Ich fing an, in Werkzeug-Modul zu graben und fand, dass Langsamkeit auftritt, wenn Antwortnachricht gelesen wirdself._read(to_read) im wsgi.py-Modul, das von BaseHTTPRequestHandler übergeben wird. Ich weiß immer noch nicht warum so langsam.

Details zur Umgebung: Ubuntu - 10.04 Python - 2.6.5 Flask - 0.9 Werkzeug - 0.8.3

Antworten auf die Frage(2)

Ihre Antwort auf die Frage