J'utilise twisted avec zmq. voici une vue d'ensemble de l'application:tordu avec zmq donnant une erreur étrange
J'ai deux instances torsadées fonctionnant sur deux systèmes et j'utilise zmq(txZmq)
pour le passage de message.
systemA
soumet des emplois à traiter par systemB
après le travail .and est terminé, il doit en aviser systemA
(pour certaines raisons diablotin). donc sur les deux systèmes, j'ai zmq
écouter ainsi que d'envoyer des messages en utilisant différents ports. maintenant je reçois erreur: zmq.error.Again: Resource temporarily unavailable
il peut être parce que le réacteur sur systemA
traite un certain système de données B arrive à envoyer un message de notification (qui fait partie de mon application) à systemA
sur lequel zmq
écoutait également pour les messages entrants.
donc je changé la partie de traitement sur systemA
à un fil torsadé en utilisant callInThread
également fil à l'intérieur j'envoie un message à ZMQ mais encore une fois je reçois la même erreur zmq.error.Again: Resource temporarily unavailable
pourquoi est-il si ??? Code est quelque chose comme ceci:
def send_remote_job():
# do some computation like fetch from db and process then send
send_socket.push(dumps(job_data))
recieve_socket.onPull = listen_for_notifiction()
reactor.callInThread(send_remote_job)
reactor.run()
J'ai vérifié sur les deux points que vous mentionnez mais tout semble bien :( – anekix