2011-06-06 2 views
2

finalement je un peu comprendre au sujet tornadoweb asynchronestockage fonction python dans l'ordinateur distribué

la clé de la réponse asynchrone est

def new_messages(self, messages): 
    cls = MessageMixin 
    logging.info("Sending new message to %r listeners", len(cls.waiters)) 
    for callback in cls.waiters: 
     try: 
      callback(messages) 
     except: 
      logging.error("Error in waiter callback", exc_info=True) 
    cls.waiters = [] 

donc est-il une solution pour stocker la fonction de rappel dans datastore ou solution si vous utilisez plusieurs ordinateurs ou processus?

par exemple: A des mises à jour de demande d'Nœud1 données de poste B A qui a traité par nœud2

comment NODE2 appel rappel nœud1 ??

Répondre

0

Quoi ?! Vous pouvez uniquement effectuer des rappels avec une file d'attente contenant un magasin de données. Regardez dans quelque chose de pika ou de carotte. Il n'y a aucun moyen de "stocker" le rappel mais vous pouvez définir un moyen pour que d'autres ordinateurs exécutent des fonctions pour vous et que les résultats soient renvoyés à l'ordinateur d'origine.