2009-11-30 3 views
3

Existe-t-il un moyen de créer des requêtes SOAP non bloquantes dans EventMachine?Appels SOAP à l'aide d'EventMachine

Je crée une application Ruby qui interagit avec le adwords google api (qui est à base de savon), en utilisant la gemme adwords4r. L'application utilise EM pour recevoir des messages sur une connexion stomp, puis traite ces messages en faisant des appels SOAP à l'API adwords. Évidemment, j'ai besoin que ces appels soient non-bloquants, puisque le traitement sera dans le fil du réacteur. Une option serait d'utiliser EM.defer, mais je préférerais ne pas avoir la surcharge d'un tas de threads dans un pool de threads.

Répondre

6

HandSoap peut utiliser EventMachine.

+0

Merci, je vais vérifier. –

+0

Oui, on dirait que HandSoap est la solution: http://wiki.github.com/unwire/handsoap/async-support. Merci! –

0

Après avoir obtenu un badge Tumbleweed avec cette question, je fini par demander au IRC#eventmachine. Apparemment, il n'y a pas d'options conviviales pour les appels SOAP, en plus d'utiliser EM.defer

+0

Je suis intéressé - qu'est-ce qui n'allait pas avec HandSoap? – tomtaylor

+0

Je suppose que c'est juste que personne dans le salon de discussion #eventmachine n'était au courant quand j'ai demandé. Je devrais probablement changer la réponse acceptée pour cette question. –