netty based http server performance 15K/sec

Jaymin Shah sjaymin at gmail.com
Thu Aug 11 07:25:04 EDT 2011


Thanks a lot for all your help and efforts.


Any suggestion what are potential configurations I may have to do to
increase number of open file and socket on windows to make my test scalable
to 15K?


I have tried searching OS file handler and socket related configuration on
windows, had no success so far.


regards,

Jaymin



On Thu, Aug 11, 2011 at 4:30 PM, Jamie McCrindle
<jamiemccrindle at gmail.com>wrote:

> It's worth saying that at 20000 requests and 200 threads, a default
> Mac OS X 10.6 installation falls apart as it runs out of open files,
> sockets get stuck in TIME_WAIT etc. so there is definitely an OS
> tuning component to running a test like this.
>
> On Thu, Aug 11, 2011 at 9:49 AM, Jamie McCrindle
> <jamiemccrindle at gmail.com> wrote:
> > Hi Jaymin,
> >
> > Here are the results on my machine. It's Mac OS X 10.6, MBP 2.66 GHZ
> > i7. I had to drop the numbers to 10000 requests and 100 threads with
> > the default Mac config. This is with the snoop HttpServer run as
> > follows:
> >
> > mvn
> -Dexec.mainClass=org.jboss.netty.example.http.snoop.HttpServerDmaven.test.skip=true
> > compile -Dskip-enforce=true exec:java
> >
> > It may be worth dropping the number of requests you're testing with as
> > well as the concurrency.
> >
> > headline figure is: Requests per second:    13070.43 [#/sec] (mean)
> >
> > ab -n 10000 -c 100 "http://localhost:8080/"
> > This is ApacheBench, Version 2.3 <$Revision: 655654 $>
> > Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
> > Licensed to The Apache Software Foundation, http://www.apache.org/
> >
> > Benchmarking localhost (be patient)
> > Completed 1000 requests
> > Completed 2000 requests
> > Completed 3000 requests
> > Completed 4000 requests
> > Completed 5000 requests
> > Completed 6000 requests
> > Completed 7000 requests
> > Completed 8000 requests
> > Completed 9000 requests
> > Completed 10000 requests
> > Finished 10000 requests
> >
> >
> > Server Software:
> > Server Hostname:        localhost
> > Server Port:            8080
> >
> > Document Path:          /
> > Document Length:        230 bytes
> >
> > Concurrency Level:      100
> > Time taken for tests:   0.765 seconds
> > Complete requests:      10000
> > Failed requests:        5
> >   (Connect: 5, Receive: 0, Length: 0, Exceptions: 0)
> > Write errors:           0
> > Total transferred:      2901160 bytes
> > HTML transferred:       2300920 bytes
> > Requests per second:    13070.43 [#/sec] (mean)
> > Time per request:       7.651 [ms] (mean)
> > Time per request:       0.077 [ms] (mean, across all concurrent requests)
> > Transfer rate:          3703.07 [Kbytes/sec] received
> >
> > Connection Times (ms)
> >              min  mean[+/-sd] median   max
> > Connect:        0    1   0.6      1       7
> > Processing:     0    3   2.2      3      14
> > Waiting:        0    3   2.0      2      13
> > Total:          1    4   2.2      4      14
> >
> > Percentage of the requests served within a certain time (ms)
> >  50%      4
> >  66%      4
> >  75%      5
> >  80%      5
> >  90%      7
> >  95%      9
> >  98%     11
> >  99%     12
> >  100%     14 (longest request)
> >
> > On Thu, Aug 11, 2011 at 9:06 AM, Jaymin Shah <sjaymin at gmail.com> wrote:
> >> I had tried it never got throughput more then 3K.
> >> So question is can Netty be able to achieve mentioned throughput more
> then
> >> 15K as per http://www.olympum.com/java/quick-benchmark-java-nodejs/ ?
> >>
> >>
> >> On Thu, Aug 11, 2011 at 1:28 PM, Mailing List SVR <
> lists at svrinformatica.it>
> >> wrote:
> >>>
> >>> Il 11/08/2011 09:34, Jaymin Shah ha scritto:
> >>>
> >>> Please find below command I had used and its output.
> >>> Command#
> >>> ab -n 20000 -c 200  http://localhost:8080/
> >>>
> >>> please try with different concurrency for example -c 5, -c 10 and so on
> >>> and see if the result change,
> >>>
> >>> Nicola
> >>>
> >>>
> >>> Output#
> >>> This is ApacheBench, Version 2.3 <$Revision: 655654 $>
> >>> Copyright 1996 Adam Twiss, Zeus Technology Ltd,
> http://www.zeustech.net/
> >>> Licensed to The Apache Software Foundation, http://www.apache.org/
> >>> Benchmarking localhost (be patient)
> >>> Completed 2000 requests
> >>> Completed 4000 requests
> >>> Completed 6000 requests
> >>> Completed 8000 requests
> >>> Completed 10000 requests
> >>> Completed 12000 requests
> >>> Completed 14000 requests
> >>> Completed 16000 requests
> >>> Completed 18000 requests
> >>> Completed 20000 requests
> >>> Finished 20000 requests
> >>>
> >>> Server Software:
> >>> Server Hostname:        localhost
> >>> Server Port:            8080
> >>> Document Path:          /
> >>> Document Length:        230 bytes
> >>> Concurrency Level:      200
> >>> Time taken for tests:   8.438 seconds
> >>> Complete requests:      20000
> >>> Failed requests:        0
> >>> Write errors:           0
> >>> Total transferred:      5800000 bytes
> >>> HTML transferred:       4600000 bytes
> >>> Requests per second:    2370.09 [#/sec] (mean)
> >>> Time per request:       84.385 [ms] (mean)
> >>> Time per request:       0.422 [ms] (mean, across all concurrent
> requests)
> >>> Transfer rate:          671.22 [Kbytes/sec] received
> >>> Connection Times (ms)
> >>>               min  mean[+/-sd] median   max
> >>> Connect:        0    0   6.1      0     507
> >>> Processing:     5   83  97.4     63    1099
> >>> Waiting:        3   52  76.5     41     598
> >>> Total:          5   83  97.7     64    1099
> >>> Percentage of the requests served within a certain time (ms)
> >>>   50%     64
> >>>   66%     70
> >>>   75%     77
> >>>   80%     80
> >>>   90%    101
> >>>   95%    116
> >>>   98%    587
> >>>   99%    597
> >>>  100%   1099 (longest request)
> >>>
> >>> On Thu, Aug 11, 2011 at 9:36 AM, News Aanad <news.anand11 at gmail.com>
> >>> wrote:
> >>>>
> >>>>
> >>>> ---------- Forwarded message ----------
> >>>> From: Jamie McCrindle <jamiemccrindle at gmail.com>
> >>>> Date: Wed, Aug 10, 2011 at 11:53 AM
> >>>> Subject: Re: netty based http server performance 15K/sec
> >>>> To: Netty Users <netty-users at lists.jboss.org>
> >>>>
> >>>>
> >>>> Can you send the apache bench command line you used along with the
> >>>> output?
> >>>>
> >>>> On Aug 10, 2011 8:09 AM, "Jaymin Shah" <sjaymin at gmail.com> wrote:
> >>>> > Hi,
> >>>> >
> >>>> > It was claimed that netty based http server can handle *15693.29
> >>>> > [#/sec]
> >>>> > request* ref#
> http://www.olympum.com/java/quick-benchmark-java-nodejs/
> >>>> >
> >>>> > I have tried using org.jboss.netty.example.http.snoop but never got
> >>>> > performance beyond* 2285.58 [#/sec] (mean)*. I am using Windows 7 -
> >>>> > 64-bit
> >>>> > operating system with 4GB RAM and Intel core i5 with 2.40GHz
> >>>> >
> >>>> > Can someone please share their experience how I can achieve
> mentioned
> >>>> > performance.
> >>>> >
> >>>> > regards,
> >>>> > Jaymin
> >>>>
> >>>> _______________________________________________
> >>>> netty-users mailing list
> >>>> netty-users at lists.jboss.org
> >>>> https://lists.jboss.org/mailman/listinfo/netty-users
> >>>>
> >>>
> >>>
> >>>
> >>> _______________________________________________
> >>> netty-users mailing list
> >>> netty-users at lists.jboss.org
> >>> https://lists.jboss.org/mailman/listinfo/netty-users
> >>>
> >>> _______________________________________________
> >>> netty-users mailing list
> >>> netty-users at lists.jboss.org
> >>> https://lists.jboss.org/mailman/listinfo/netty-users
> >>
> >>
> >> _______________________________________________
> >> netty-users mailing list
> >> netty-users at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/netty-users
> >>
> >
>
> _______________________________________________
> netty-users mailing list
> netty-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/netty-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/netty-users/attachments/20110811/8908d42b/attachment-0001.html 


More information about the netty-users mailing list