Les stubs générés par Axis2 sont-ils thread-safe?
Sont des stubs client généré à partir de WSDL par Axis2 thread-safe?
Bien sûr, "thread-safe" n'est pas rigoureusement nécessaire, un terme défini, donc je suis moins intéressé par ce qui suit:
Sont différents instances de la même classe stub accessibles simultanément par différents threads, avec le même comportement qu'un seul thread d'exécution?
Est un unique instance de la même classe stub accessibles simultanément par différents threads, avec le même comportement que les mêmes appels entrelacés dans certains arbitraire dans un thread d'exécution?
Vous pouvez également utiliser la terminologie décrite ici (et originaires ici) pour en discuter plus précisément.
source d'informationauteur BeeOnRope
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas sûr axis2, mais au moins axis1 génère non-thread-safe-client talons. J'ai l'impression que presque tous les autres SOAP client n'était pas thread-safe. Si je me souviens bien, le problème était avec le XML parsing bibliothèque utilisée dans un non-thread-safe manière par le client stub.
À l'aide d'apache commons-mise en commun de mettre en commun les instances et l'utilisation de chacun à partir d'un thread à la fois bien travaillé.
Mise à jour: Pour Axis2, voir https://issues.apache.org/jira/browse/AXIS2-4357 (revendications Axis2 n'est pas thread-safe, par conception)
Ces talons sont apatrides permettant la réutilisation de la stub des instances. Pouvez-vous veuillez donner des détails sur le problème que vous rencontrez avec Axis2. Les gens recommandent généralement de Xfire sur l'Axe.
Je crois que je vais essayer de répondre à ma propre question, en fournissant une mise à jour sur plus recherches que j'ai fait. Il semble que par défaut les anciennes versions de Axis2 talons peut avoir été seulement "fil-compatible" (ne peut pas faire des appels sur le même tampon instance simultanément à partir de plusieurs threads - mais les appels à différentes instances est OK).
Voir par exemple:
http://markmail.org/message/3lu7x7pfo47vgnck
http://markmail.org/message/sljyf6lpecxqllgx
Vous pouvez ressentir une certaine prise de fuites, et à exécuter des sockets si vous n'appelez pas de nettoyage/cleanupTransport, comme par un fil de discussion et beaucoup de ceux liés à:
http://issues.apache.org/jira/browse/AXIS2-3670
Dans certains cas, au moins les sous-jacents HttpClient semble maintenant être thread-safe, mais selon la façon dont vous avez produit votre client, l'ensemble de la stub peut-être pas:
http://amilachinthaka.blogspot.com/2009/05/improving-axis2-client-http-transport.html