I'll ask the dumb question..How do you configure AXIS2 to use the NIOConnector instead of default HTTP Connector?
Thanks Martin-- ----- Original Message ----- Wrom: MBIPBARHDMNNSKVFVWRKJVZCMHVIBGDADRZFSQHYUCDDJBL To: <axis-user@ws.apache.org> Sent: Monday, February 11, 2008 12:16 PM Subject: Re: Async requests killing network > Matthias, > > have you tried to create less Callback objects and handle your > "bunch" or requests (at least) with a single one? > Furthermore, Paul pointed out the NIO connector. If you're instead > using the default one, I'd suggest you to customize the configuration > context your service client uses in order to inject a custom > HttpConnectionManager (see the httpclient library) and periodically > call closeIdleConnections(). > > Michele > > On 11 Feb 2008, at 11:11, Matthias Wermund wrote: > > > Hi, > > > > I'm having problems starting a big amount of async webservice > > requests via Axis2 client in short time. > > The requests are all started from the same Thread and should run > > parallel in only small amount. > > > > As you can see below, I start about 1000 * 5 = 5000 requests, but > > only a max of 2-5 are called parallel. > > For each dataset, a few information-requests are started parallel, > > but I ensure that each CallbackHandler has been finished, > > before requesting the informations for the next dataset. > > > > For the first several hundred requests this works fine, but after > > some time, my network (OS is Windows 2000) goes down, > > which means that the complete OS looses the connection to the local > > network. > > > > I guess this could be based in opening too much TCP connections or > > something like this, > > because if it affects the whole OS and not just my application, it > > has to be something with the network device or driver. > > > > So basically my question is: > > Is it ensured that the TCP connection is already closed when > > CallbackHandler.onError or CallbackHandler.onComplete is called? > > Or must I do this myself in any way? > > Do you have any other clue what might be the problem here? > > > > Thank you! > > > > > > ______________________________________________ > > A quick mock-overview of how I start the threads: > > > > List<Dataset> datasets; // approx. 500 - 1000 objects > > ... > > for (Object data: datasets) { > > List<Callback> callbacks; > > for (Information info: myRequestsForThisData) { // approx. > > 2-5 objects > > // Generating the Request Document > > Request request = generateRequest(info); > > // Generating a service Callback instance; the Callback > > class has an attribute "finished" > > Callback myCallback = new Callback(); > > // remembering the callback > > callbacks.add(myCallback); > > // starting the async request > > stub.startRequest(request,myCallback); > > } > > > > // now wait until all Callbacks are finished (finished is true > > if onError or onComplete has been called) > > while (true) { > > boolean allCompleted = true; > > for(Callback callback: callbacks) > > if (callback.isFinished()) { > > allCompleted = false; > > break; > > } > > if (allCompleted) > > break; > > Thread.sleep(25); > > } > > } > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]