Sfondo
Ho un'app Web che creerà un'immagine dall'input dell'utente. La creazione dell'immagine potrebbe richiedere richiedere un paio di secondi.Questa app Web richiede una coda di attività?
Problema
Se lascio il thread del server, che gestisce la richiesta/risposta anche generare l'immagine, che sta per impegnare un thread per un paio di secondi, e, eventualmente, impantanarsi il mio server, influenzano le prestazioni , uccidere i cuccioli, ecc
domanda
Dovrei usare una coda compito, come ad esempio Celery, in modo che il server può mano fuori la creazione di immagini, e tornare alla gestione delle richieste/risposte? Non ho alcun problema nel lasciare che l'utente che sta creando l'immagine attenda, ma non voglio che abbia effetto sull'accesso di altre persone al sito.
+1: E ... se utilizzi Apache, gestirà una grande quantità di buffer e concorrenza per te. In effetti con mod_wsgi, puoi avere molti, molti processi di back-end in esecuzione contemporaneamente. Fino al tuo benchmark, non puoi esserne sicuro, ma il carico di lavoro che può gestire è spesso enorme. –
Ok. Grazie per avermi salvato N ore di lavoro. La preoccupazione principale per me era che un paio di secondi era così lungo .. Uno dei miei obiettivi personali era fornire una buona interfaccia utente, e pensavo che l'utente fissasse uno schermo vuoto per un paio di secondi mentre l'immagine veniva generata e inviata, sarebbe sotto la pari Se c'era una coda, potevo almeno sondare e tenerli occupati con un messaggio o qualcosa da guardare. –
@random_person: "fissando uno schermo vuoto"? Come può una pagina HTML presentare una "schermata vuota"? Come si fa a farlo? Principalmente quando invio un modulo, fisso la pagina precedente per un po '. Quindi la pagina viene sostituita improvvisamente. Inoltre, molte persone fanno i fannulloni di fantasia in Javascript per mostrare qualche azione. Ma non so come creare uno "schermo bianco" in un browser. Puoi spiegarlo? –