2016-06-29 18 views
5

I nostri client hanno problemi con la nostra applicazione appengine python che richiede l'elaborazione delle code delle attività per generare report e visualizzare non appena terminati. Questa soluzione alla ben nota lentezza e timeout di GAE ha funzionato bene per noi fino a poco tempo fa.Google App Engine: la coda delle attività impiega troppo tempo per avviare attività casuali

La scorsa settimana abbiamo iniziato a lamentarci per quanto tempo gli utenti dovevano attendere i report. Un tempo era al massimo un minuto, ma ora può richiedere più di 10 minuti.

Inoltre, non riesco a riprodurre il problema, ma guardando la coda dei task, posso vedere che queste attività semplicemente non sono iniziate.

Bellow è uno screenshot di una delle code (non quella che genera i report, ma il problema si verifica in tutte le code).

http://www.clipular.com/c/4829223501430784.png?k=QaP2kedZm6NcvrKzwVSJqq2YI1g

Possiamo vedere che non ci sono attività in esecuzione, ma l'unico compito nella coda non iniziare fino ha completato 7 minuti di attesa. E guarda l'ETA, sta predicendo che l'attività dovrebbe iniziare nel passato. Alla fine è andato via, ma perché non è iniziato prima?

motivi che ho già escluso:

  • risorse insufficienti o istanze: succede anche dopo la mezzanotte, quando arriviamo a pochi richieste.
  • Configurazione coda errata: non è così, abbiamo tutte le varietà di configurazioni della coda e succede in tutto. Ad esempio, Velocità massima = 350/s, Dimensione bucket = 400, Concorrenza massima = 400.
+1

Sto riscontrando problemi simili, ma in genere le mie attività richiedono meno di un minuto per l'esecuzione. Ancora fastidioso però. –

+1

Vedere https://code.google.com/p/googleappengine/issues/detail?id=4901 –

risposta

0

Questo problema ha smesso di verificarsi senza alcuna azione. Apparentemente, è dovuto a qualche tipo di errore nei server GAE. Il problema è durato per circa due settimane.

Un'azione che può ridurre al minimo il problema, tuttavia, è di distribuire le attività in code separate, se possibile.

--- modifica ---

Sta succedendo di nuovo. L'unica cosa che potevamo fare per risolvere il problema era scrivere uno script che continuasse a chiedere di eseguire le attività in ritardo se sono state trovate. Funziona su https://console.cloud.google.com/appengine/taskqueues via tampermonkey.

Problemi correlati