Check out Axis2 before 'writing your own soap toolkit'. It is in the plans for Axis2. If you can help validate it. that would be excellent.
-- dims On 6/8/05, Tom Oinn <[EMAIL PROTECTED]> wrote: > Hi Guenter, > > Thanks for the reply. Our problem here is that we don't control the > services (this system integrates whatever it finds, that's the point) > and that when I call call.invoke(...) it blocks until there's a response. > > What I'd ideally need is something that allowed me to specify a callback > of some kind to call.invoke and have the initial method call return > immediately. This would then have to be combined with some agent that > received _all_ soap messages (otherwise you just have another thread > listening per service and it defeats the point) and invoked the callback > when a message arrived that was in some way correlated to the initial > request. > > I have a suspicion I'm moving into 'write your own soap toolkit' > territory again... > > Tom > > Grossberger, Guenter wrote: > > Hi, Tom! > > > > First I don't know if something like that is covered in Axis 2. > > > > But I guess the Half-Sync/Half-Async pattern or an other event-handling > > or concurrency pattern described in the POSA2 book (Pattern-Oriented > > Software Architecture: Patterns for Concurrent and Networked Objects > > Vol. 2, http://www.cs.wustl.edu/~schmidt/POSA/) would work for you. > > > > Bye, > > Guenter > > > > > > > >>-----Original Message----- > >>From: Tom Oinn [mailto:[EMAIL PROTECTED] > >>Sent: Wednesday, June 08, 2005 2:19 PM > >>To: [email protected] > >>Subject: Minimising thread usage across multiple axis calls > >> > >>Hi all, > >> > >>Consider this problem - we have a set of services outside of > >>our control > >>(a mixture of doc/lit and rpc, that's not important though) which are > >>being orchestrated into a dataflow style workflow. At present we must > >>allocate one thread to each service invocation and this is > >>potentially a > >>problem for cases where either a single workflow launches > >>thousands of > >>services concurrently or where the workflow service itself is > >>hosting a > >>large number of active workflows. > >> > >>In principle it would seem possible to have a thread which > >>was aware of > >>all currently pending SOAP operations (where the request message had > >>been sent but no response received) and which could poll some > >>incoming > >>queue regularly, launching any neccessary threads if messages > >>are present. > >> > >>This implies a client manager component, I'm not aware of anything > >>analogous to this in the current architecture though? > >> > >>Questions : > >> > >>1) Is this covered in the Axis2 design in any way? > >> > >>2) Is anyone else interested? > >> > >>Cheers, > >> > >>Tom > >> > > > > > > -- Davanum Srinivas -http://blogs.cocoondev.org/dims/
