On Tue, 2006-08-01 at 19:44 +0200, Emmanuel Lecharny wrote: > Guys, seems to me that the Naggle Algorithm hit again :) > > When you reach around 25 req/s, whith an average of 40 ms per request means > you didn't disabled it. Try to change that : > > SocketAcceptorConfig acceptorCfg = new SocketAcceptorConfig(); > ... > ((SocketSessionConfig)(acceptorCfg.getSessionConfig())).setTcpNoDelay( true > ); > > I think it can change the performance *a lot* :) > > (or something similar. On linux, you can type : sudo /sbin/sysctl -w > net.ipv4.tcp_abc=0) > > Emmanuel >
Yes, indeed. That did the trick. Thanks a bunch. Oleg > On 8/1/06, Niklas Therning (JIRA) <[EMAIL PROTECTED]> wrote: > > > > [ > > http://issues.apache.org/jira/browse/DIRMINA-232?page=comments#action_12424943] > > > > Niklas Therning commented on DIRMINA-232: > > ----------------------------------------- > > > > Hehe, just figured that out. Thanks! I see performance in line with what > > you get: > > > > [EMAIL PROTECTED]:~$ ab2 -k -n 100 http://localhost:8080/index.html > > This is ApacheBench, Version 2.0.41-dev <$Revision: 1.141 $> apache-2.0 > > Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, > > http://www.zeustech.net/ > > Copyright (c) 1998-2002 The Apache Software Foundation, > > http://www.apache.org/ > > > > Benchmarking localhost (be patient).....done > > > > > > Server Software: MINA > > Server Hostname: localhost > > Server Port: 8080 > > > > Document Path: /index.html > > Document Length: 10000 bytes > > > > Concurrency Level: 1 > > Time taken for tests: 3.994865 seconds > > Complete requests: 100 > > Failed requests: 0 > > Write errors: 0 > > Keep-Alive requests: 100 > > Total transferred: 1011400 bytes > > HTML transferred: 1000000 bytes > > Requests per second: 25.03 [#/sec] (mean) > > Time per request: 39.949 [ms] (mean) > > Time per request: 39.949 [ms] (mean, across all concurrent requests) > > Transfer rate: 247.07 [Kbytes/sec] received > > > > Connection Times (ms) > > min mean[+/-sd] median max > > Connect: 0 0 0.0 0 0 > > Processing: 4 39 4.7 39 69 > > Waiting: 0 0 3.1 0 30 > > Total: 4 39 4.7 39 69 > > > > Percentage of the requests served within a certain time (ms) > > 50% 39 > > 66% 40 > > 75% 40 > > 80% 40 > > 90% 40 > > 95% 40 > > 98% 40 > > 99% 69 > > 100% 69 (longest request) > > > > So, still not anywhere near the 8571.66 Kbytes/sec you get with native > > HttpCore. I will try to do some profiling and see if I can see what happens. > > > > > > > Performance of StreamIoHandler degrades dramatically when the IoSession > > is kept alive between HTTP requests > > > > > ----------------------------------------------------------------------------------------------------------- > > > > > > Key: DIRMINA-232 > > > URL: http://issues.apache.org/jira/browse/DIRMINA-232 > > > Project: Directory MINA > > > Issue Type: Bug > > > Affects Versions: 0.9.5 > > > Environment: Ubuntu Linux 6.06 > > > Reporter: Oleg Kalnichevski > > > > > > I have been observing a strange issue with MINA's StreamIoHandler while > > benchmarking the performance of the HTTP server based on HttpCore and MINA. > > The throughput of the StreamIoHandler tends to degrade dramatically when the > > IoSession is kept alive between HTTP requests. The problem is perfectly > > reproducible with a slightly modified version of HttpProtocolHandler that > > ships with MINA (no external code is involved). > > > > -- > > This message is automatically generated by JIRA. > > - > > If you think it was sent incorrectly contact one of the administrators: > > http://issues.apache.org/jira/secure/Administrators.jspa > > - > > For more information on JIRA, see: http://www.atlassian.com/software/jira > > > > > > > >
