Am Freitag, den 04.01.2008, 18:19 -0800 schrieb Kyle Sampson:
> I'm currently using CXF 2.0.3.  While playing around with WS-Addressing, I've
> noticed a number of errors that occur when sending lots of messages.  

Here, "lots of messages" = "messages being sent in a while(true) loop"

> I've
> been able to reproduce them by making minor changes to the ws_addressing
> sample provided with CXF.
> 
> During these tests, I turned off logging for anything less than WARNING.  In
> Client.java, I changed the following lines:
> 
> implicitPropagation(port);
> explicitPropagation(port);
> implicitPropagation(port);
> 
> to the following:
> 
> int i = 0;
> while(true) {
>       port.greetMeOneWay("Kyle");
>       i++;
>       if(i % 10 == 0) {
>               System.out.println("Sent " + i + " messages.");
>       }
> }
> 

Is there a SOAP client from any web service stack (Metro? Axis?
Spring-WS?) that *could* support nonstop web service calls at the rate
of a while(true) loop?  Had CXF failed on your hardware at 7600 or
76,000 attempts instead of just 760, would you also be sending this
email noting a problem, or would that have been within acceptable bounds
of failure?

I'm not sure the problem you're reporting is:
1.) Given our hardware, and CXF's architecture, CXF failed far too soon
within a while(true) loop; i.e., tests with Axis or Metro gave a far
greater number of calls before failing.  That would be a legitimate
concern for us to look into.

or

2.) CXF's client and server failed at *anytime* during a while(true)
loop of web service calls--i.e., you'd be sending this email if CXF
clients had failed at iteration 760,000.  In this case, before I can be
convinced this is an error, I would first need to see Axis or Metro
clients be able to handle such while(true) rate calls indefinitely.


> After calling greetMeOneWay() around 760 times in this way, I get an
> OutOfMemoryError.  I profiled the client and server using YourKit, and both
> the client and server seem to have a memory leak -- the client runs out of
> memory first.  The problem seems to be MAPCodec.uncorrelatedExchanges map --
> it's using nearly all the heap memory available.
> 

Is that necessarily *leaking*, or just the saving of state for each of
the hundreds of requests waiting for a response?

Regards,
Glen


Reply via email to