Approche Simple pour le lancement en tâche de fond dans Django

J'ai un site web de Django, et une page a un bouton (ou un lien) qui lorsqu'il est cliqué va lancer une assez longue tâche en cours d'exécution. Évidemment, je veux lancer cette tâche comme une tâche de fond et immédiatement renvoyer un résultat à l'utilisateur. Je veux mettre en œuvre ce à l'aide d'une approche simple qui ne va pas m'obliger à installer et apprendre une toute nouvelle architecture de messagerie comme le Céleri par exemple. Je ne veux pas utiliser le Céleri! Je veux juste utiliser une approche simple que je peux mettre en place et à exécuter au cours de la prochaine demi-heure ou ainsi. N'est-ce pas là une façon simple de le faire dans Django sans avoir à ajouter (encore un autre) 3ème partie package?

Peut-être vous avez le serveur retourne une Demande Reçue type de réponse. Alors si d'interrogation ou websockets ne sont pas une option, il suffit d'avoir le serveur de mise à jour de un pour cent de la valeur complète peut-être 10% ou 25%. Et une zone désignée pour l'utilisateur afin de vérifier les processus en cours d'exécution, et d'afficher le pourcentage d'achèvement. De cette façon, le navigateur est seulement frapper le serveur lorsque l'utilisateur passe à ou actualise les processus en cours d'exécution de la page. Alors si un processus a 100% de réussite ont un lien vers les résultats. Juste quelques idées.
Remarque: Le serveur de mise à jour du pourcentage de la valeur n'est que sur le serveur [par exemple, une valeur en DB]. Cela peut être interrogé si l'utilisateur accède à la page donnée. Aussi cela dépendra de la façon dont l'infrastructure peut gérer les connexions simultanées. Le processus en cours d'exécution peut bloquer, de sorte que vous pouvez avoir besoin de regarder dans quelque chose comme une tornade.
Je doute très bien que tout ce que vous écrivez vous-même va être plus simple que d'installer le Céleri et l'avoir fait avec elle.
"Je doute fort que ce que vous écrivez vous-même va être plus simple que d'installer le Céleri et l'avoir fait avec elle." - allons-voir - je ne peux penser à beaucoup de choses plus simple que le Céleri. C'est un peu beaucoup de logiciel, mais c'est une grande boule de code peut gérer à grande échelle, de haute-volume réparti les tâches. Elle doit être installe d'une valeur-clé magasin, un courtier et dieu sait quoi d'autre. Si vous voulez juste pour s'exécuter en tâche de fond alors je cherche autre chose.

OriginalL'auteur Marc | 2014-02-21