2010-01-21 9 views
5

Ich habe eine Google App Engine App mit Java und Spring MVC 3.0. Oftmals dauert es sogar 2 Minuten ohne eine Anfrage, dann ist die nächste Anfrage eine Ladeanforderung, die ungefähr 12 Sekunden dauert, um darauf zu antworten, und ungefähr 5 Sekunden CPU-Zeit verbraucht. Manchmal führt es eine Ladeanforderung aus, selbst wenn es nur eine Minute lang keinen Verkehr gab.Google App Engine lädt Anfragen sehr häufig

Google sagt einmal, es gibt einen stetigen Fluss von Verkehr zu Ihrer Website, dann müssen Sie sich keine Sorgen machen, aber selbst wenn ich einen stetigen Fluss hätte, würde es wahrscheinlich immer noch Zeiten geben, in denen ich ohne Verkehr für 1 ging Minute.

Ist dies eine normale Leerlaufzeit für die JVM-Instanz, die deaktiviert werden soll?

EDIT: Nach der Untersuchung fand ich, dass JDO Initialisierung der Teil ist, der die meiste Zeit (~ 6 Sekunden) dauert. Und nachdem ich component-scan von der Feder wegdrehte und die Controller manuell festlegte, ging die Federeinstellungszeit auf 1,5 Sekunden zurück. Wenn ich jdo nicht bei einer Ladeanforderung verwende, ist die Ladeanforderungs-Antwortzeit um ~ 3 Sekunden statt ~ 12 Sekunden sinnvoller.

Was wäre nett, wenn wir das DispatcherServlet zum Memcache serialisieren könnten.

+0

Bezogen auf: http://stackoverflow.com/questions/2051036/google-app-engine-application-instance-recycling-and-response-times/2051118#2051118 –

+0

Man Stack-Überlauf wird von Google schnell indiziert. Diese Seite ist bereits die Nummer 2 bei Google-Suchanfragen für App-Engine-Ladeanforderungen. – Kyle

Antwort

1

Es wurde vom Google-Team repariert, und jetzt werden Ladeanforderungen nur alle 10 Minuten oder so ausgeführt, was viel sinnvoller ist.

+0

Kannst du einen Hinweis darauf geben? Ich konnte die Quelle dieser Informationen nicht finden. Vielen Dank! –

0

Derzeitige Beweise deuten darauf hin, dass AppEngine die Ressourcen Ihrer Anwendung nach relativ kurzen Leerlaufzeiten recycelt. Dies kann für Anwendungen wie Ihre, die lange Boot-Zeiten haben, eine große Hürde darstellen. Mir ist derzeit keine Lösung für dieses Problem bekannt.

+0

Und einige Entwickler versuchen, das System zu spielen, indem sie ihre Seiten ziemlich oft durch Pings schlagen lassen. Das bedeutet, Google bekämpft das und so weiter. Ich ging 20 Minuten, bevor ich einen Sprung brauchte - jetzt sind es ein paar Minuten. Habe noch nie versucht es zu spielen. –