Re: [Simpleweb-Support] Long live connections number.
Brought to you by:
niallg
From: Niall G. <gal...@ya...> - 2007-11-01 18:55:14
|
Hi, In this case you need to increase the number of threads in the thread pool. You need to do the following. ProcessQueue.getInstance().resize(100) This will increase the number of concurrent requests to 100. Niall --- Andrew Ryzhokhin <ryz...@gm...> wrote: > Hi Niall, > > > Thank you for the answer. Yes, you are right if it > relates to quick > processing HTTP requests. > The key point of my question is 'long-lived > HTTP connections'. You can use the following code > to reproduce my problem: > > Implement test handler with long time processing, > for example 10 secs. > > public class DelayHandler extends Service { > > public DelayHandler(Context context) > { > super(context); > } > > > protected void process(Request request, Response > response) throws Exception > { > > String param = > request.getParameter("counter"); > Log.debug(this, "Start for: " + param); > Thread.sleep(10000); > response.commit(); > Log.debug(this, "End for: " + param); > } > } > > I used JMeter for load testing. My test sends 40 > HTTP Requests to > resource processed with DelayHandler service in the > same time. > > All my requests have parameter 'counter' with number > of request. But > handler is processed only first 20 requests and then > other 20 > requests. > > Seems this restriction is hardcoded in the > ProcessQueue.java at line 64. > > The log I received is attached below, please, to > draw attention to time > (seconds) and numbers of requests: > ================================================== > > 17:03:26,875 [DelayHandler] Start for: 2 > 17:03:26,890 [DelayHandler] Start for: 4 > 17:03:26,953 [DelayHandler] Start for: 5 > 17:03:26,968 [DelayHandler] Start for: 6 > 17:03:27,000 [DelayHandler] Start for: 7 > 17:03:27,062 [DelayHandler] Start for: 8 > 17:03:27,078 [DelayHandler] Start for: 9 > 17:03:27,078 [DelayHandler] Start for: 10 > 17:03:27,109 [DelayHandler] Start for: 11 > 17:03:27,171 [DelayHandler] Start for: 13 > 17:03:27,171 [DelayHandler] Start for: 12 > 17:03:27,187 [DelayHandler] Start for: 14 > 17:03:27,203 [DelayHandler] Start for: 15 > 17:03:27,265 [DelayHandler] Start for: 16 > 17:03:27,281 [DelayHandler] Start for: 17 > 17:03:27,281 [DelayHandler] Start for: 18 > 17:03:27,312 [DelayHandler] Start for: 19 > 17:03:27,375 [DelayHandler] Start for: 21 > 17:03:27,375 [DelayHandler] Start for: 20 > 17:03:27,390 [DelayHandler] Start for: 22 > > ================================================== > Strange pause approximately length of 10 seconds. > ================================================== > > 17:03:36,875 [DelayHandler] End for: 2 > 17:03:36,875 [DelayHandler] Start for: 23 > 17:03:36,890 [DelayHandler] End for: 4 > 17:03:36,890 [DelayHandler] Start for: 24 > 17:03:36,968 [DelayHandler] End for: 5 > 17:03:36,968 [DelayHandler] Start for: 25 > 17:03:36,984 [DelayHandler] End for: 6 > 17:03:36,984 [DelayHandler] Start for: 26 > 17:03:37,000 [DelayHandler] End for: 7 > 17:03:37,000 [DelayHandler] Start for: 27 > 17:03:37,062 [DelayHandler] End for: 8 > 17:03:37,062 [DelayHandler] Start for: 29 > 17:03:37,078 [DelayHandler] End for: 9 > 17:03:37,078 [DelayHandler] Start for: 28 > 17:03:37,078 [DelayHandler] End for: 10 > 17:03:37,078 [DelayHandler] Start for: 30 > 17:03:37,109 [DelayHandler] End for: 11 > 17:03:37,109 [DelayHandler] Start for: 31 > 17:03:37,171 [DelayHandler] End for: 13 > 17:03:37,171 [DelayHandler] Start for: 32 > 17:03:37,171 [DelayHandler] End for: 12 > 17:03:37,171 [DelayHandler] Start for: 33 > 17:03:37,187 [DelayHandler] End for: 14 > 17:03:37,187 [DelayHandler] Start for: 34 > 17:03:37,203 [DelayHandler] End for: 15 > 17:03:37,203 [DelayHandler] Start for: 35 > 17:03:37,265 [DelayHandler] End for: 16 > 17:03:37,265 [DelayHandler] Start for: 36 > 17:03:37,281 [DelayHandler] End for: 17 > 17:03:37,281 [DelayHandler] Start for: 37 > 17:03:37,281 [DelayHandler] End for: 18 > 17:03:37,281 [DelayHandler] Start for: 38 > 17:03:37,312 [DelayHandler] End for: 19 > 17:03:37,312 [DelayHandler] Start for: 39 > 17:03:37,375 [DelayHandler] End for: 21 > 17:03:37,375 [DelayHandler] Start for: 40 > 17:03:37,375 [DelayHandler] End for: 20 > 17:03:37,375 [DelayHandler] Start for: 1 > 17:03:37,390 [DelayHandler] End for: 22 > 17:03:37,390 [DelayHandler] Start for: 3 > 17:03:46,890 [DelayHandler] End for: 23 > 17:03:46,890 [DelayHandler] End for: 24 > 17:03:46,968 [DelayHandler] End for: 25 > 17:03:46,984 [DelayHandler] End for: 26 > 17:03:47,015 [DelayHandler] End for: 27 > 17:03:47,062 [DelayHandler] End for: 29 > 17:03:47,078 [DelayHandler] End for: 28 > 17:03:47,078 [DelayHandler] End for: 30 > 17:03:47,109 [DelayHandler] End for: 31 > 17:03:47,171 [DelayHandler] End for: 32 > 17:03:47,171 [DelayHandler] End for: 33 > 17:03:47,187 [DelayHandler] End for: 34 > 17:03:47,218 [DelayHandler] End for: 35 > 17:03:47,265 [DelayHandler] End for: 36 > 17:03:47,281 [DelayHandler] End for: 37 > 17:03:47,281 [DelayHandler] End for: 38 > 17:03:47,312 [DelayHandler] End for: 39 > 17:03:47,375 [DelayHandler] End for: 40 > 17:03:47,375 [DelayHandler] End for: 1 > 17:03:47,390 [DelayHandler] End for: 3 > > ================================================== > > Thus server process batches of 20 requests. > > On 10/31/07, Niall Gallagher > <gal...@ya...> wrote: > > Hi Andrew, > > > > I typically run load tests with in excess of 2000 > > connections all working concurrently. I am not > sure > > what your issue is. However simple will close > > connections that have not been active within a > certain > > number of seconds typically less than about 8 > seconds. > > > > If you want to change this you can modify the > Poller > > to keep connections alive for longer. > > > > Niall > > > > --- Andrew Ryzhokhin <ryz...@gm...> wrote: > > > > > Hi all. > > > > > > I have application based on Simple HTTP server. > > > My application used long-lived HTTP connections > > > between the client and > > > server (comet technology). > > > It seems Simple supports only 20 competitive > > > connections. Other > > > connections stored on the queue. So, my > long-lived > > > connections blocked > > > server. > > > > > > What should I do for keeping more user > connections? > > > Could anybody help me please? > > > Thanks a lot... > > -- > Regards > Andrew Ryzhokhin > www.ardas.dp.ua > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? > Stop. > Now Search log events and configuration files using > AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/> _______________________________________________ > Simpleweb-Support mailing list > Sim...@li... > https://lists.sourceforge.net/lists/listinfo/simpleweb-support > __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com |