J'écris une application qui diffuse la sortie (je veux dire à la fois sys.stdout et sys.stderr) d'un script python excité sur le serveur, en temps réel au navigateur. Les utilisateurs sur le site seront autorisés à sélectionner le script pour exécuter, exciter et tuer leur script choisi, et modifier certains paramètres, donc j'ai besoin d'un thread différent par utilisateur sur le site (l'utilisateur A peut démarrer, arrêter et changez un script, tandis que l'utilisateur B peut faire la même chose avec un script différent).Diffuser le résultat d'une commande dans le navigateur en utilisant Twisted et Comet
Je sais que j'ai besoin d'utiliser la comète pour les clients Web, et vu que le reste du projet est écrit en python, je voudrais utiliser torsadé pour le serveur, mais je ne suis pas vraiment sûr de ce que je besoin de faire ensuite!
Il existe un nombre déconcertant d'options (Divmod Mantissa, Divmod Nevow, twisted.web, STOMP, etc), et certains sont mieux documentés que d'autres, rendant l'ensemble plutôt délicat! J'ai une démo de travail utilisant stompservice sur orbited, en utilisant Orbited.TCPSocket pour le côté javascript des choses, mais je commence à penser que le modèle de canal STOMPs ne va pas fonctionner pour les scripts multithread, multi-running (sauf si j'ouvre un nouveau canal par passage, mais cela semble être une mauvaise utilisation du modèle de canal).
Quelqu'un peut-il me diriger dans la bonne direction, ou un exemple de code que je peux apprendre?
Merci!
Pourquoi avez-vous besoin d'une comète? l'utilisateur a juste besoin de voir le statut correct? –