Pablo, Here the o/p:
command: ab -t 60 -c 100 https://domain/h/imp/login.php vmstat: [r...@wmail /]# vmstat -S M 2 20 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 40 0 0 7305 288 2259 0 0 0 3 14 11 2 1 97 0 0 7 0 0 7301 288 2259 0 0 0 0 1785 15462 39 15 46 0 0 47 0 0 7296 288 2259 0 0 0 0 1720 15032 40 17 43 0 0 25 0 0 7297 288 2260 0 0 0 62 1656 15157 40 15 45 0 0 7 0 0 7296 288 2260 0 0 0 0 1866 15701 40 17 44 0 0 51 1 0 7293 288 2260 0 0 0 42 1862 16083 37 14 44 4 0 1 0 0 7295 288 2260 0 0 0 12 1807 15293 42 15 42 0 0 51 0 0 7298 288 2260 0 0 0 0 1797 16015 36 14 50 0 0 14 1 0 7296 288 2260 0 0 0 54 1782 15001 42 15 41 2 0 36 0 0 7293 288 2260 0 0 0 220 1728 14567 43 16 37 3 0 17 0 0 7292 288 2260 0 0 0 42 1726 15443 40 16 44 0 0 11 0 0 7296 288 2260 0 0 0 10 1844 15618 39 14 46 0 0 9 0 0 7290 288 2260 0 0 0 0 1617 14694 41 15 44 0 0 4 0 0 7291 288 2260 0 0 0 44 1632 14668 42 15 43 0 0 7 0 0 7287 288 2260 0 0 0 16 1657 14941 38 17 45 0 0 14 1 0 7287 288 2260 0 0 0 40 1751 15042 39 17 41 3 0 43 0 0 7290 288 2260 0 0 0 12 1787 15635 38 18 44 0 0 1 0 0 7288 288 2260 0 0 0 0 1675 14830 41 17 42 0 0 44 0 0 7290 288 2260 0 0 0 44 1762 15691 33 16 51 0 0 39 0 0 7288 288 2260 0 0 0 10 1666 14491 41 18 40 1 0 Process waiting for run time (r) seems to be high. But don't know if it is normal with 100 concurrent users. Thanks Paras. On Mon, Sep 13, 2010 at 7:11 PM, Pablo Garcia Melga <mal...@gmail.com>wrote: > Paras, have you checked the OS counters ?, is this completely CPU bound ? > would you post a "vmstat 2" run during the ab testing ? > > Regards, Pablo > > On Mon, Sep 13, 2010 at 7:28 PM, Paras pradhan <pradhanpa...@gmail.com> > wrote: > > I got almost the same result as yours with a small test php script. But > with > > the login page of horde, I am getting a small number of requests > processed. > > I am assuming my tuned apache is fine and its the bulky horde php scripts > > that are hitting me. But still looking around the solution.. I have > > memcached and eaccelerator in place but not seeing improvements. > > > > With small php script: > > nagarkot:~ ppradhan$ ab -t 10 -c 30 https://domain/test.php > > 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 hostname (be patient) > > Finished 4608 requests > > > > Server Software: Apache/2.2.3 > > Server Hostname: hostname > > Server Port: 443 > > SSL/TLS Protocol: TLSv1/SSLv3,AES256-SHA,1024,256 > > Document Path: /test.php > > Document Length: 68 bytes > > Concurrency Level: 30 > > Time taken for tests: 10.003 seconds > > Complete requests: 4608 > > Failed requests: 0 > > Write errors: 0 > > Total transferred: 1107432 bytes > > HTML transferred: 313480 bytes > > Requests per second: 460.65 [#/sec] (mean) > > Time per request: 65.125 [ms] (mean) > > Time per request: 2.171 [ms] (mean, across all concurrent requests) > > Transfer rate: 108.11 [Kbytes/sec] received > > Connection Times (ms) > > min mean[+/-sd] median max > > Connect: 8 30 33.3 26 406 > > Processing: 5 35 21.4 32 386 > > Waiting: 5 30 20.4 27 383 > > Total: 20 65 40.3 59 462 > > Percentage of the requests served within a certain time (ms) > > 50% 59 > > 66% 64 > > 75% 69 > > 80% 72 > > 90% 81 > > 95% 91 > > 98% 154 > > 99% 269 > > 100% 462 (longest request) > > > > > > With horde: > > > > -- > > nagarkot:~ ppradhan$ ab -t 10 -c 30 https://domain/h/imp/login.php > > 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 hostname (be patient) > > Finished 28 requests > > > > Server Software: Apache/2.2.3 > > Server Hostname: hostname > > Server Port: 443 > > SSL/TLS Protocol: TLSv1/SSLv3,AES256-SHA,1024,256 > > Document Path: /h/imp/login.php > > Document Length: 16808 bytes > > Concurrency Level: 30 > > Time taken for tests: 10.057 seconds > > Complete requests: 28 > > Failed requests: 0 > > Write errors: 0 > > Total transferred: 490644 bytes > > HTML transferred: 470624 bytes > > Requests per second: 2.78 [#/sec] (mean) > > Time per request: 10775.575 [ms] (mean) > > Time per request: 359.186 [ms] (mean, across all concurrent > requests) > > Transfer rate: 47.64 [Kbytes/sec] received > > Connection Times (ms) > > min mean[+/-sd] median max > > Connect: 9 213 220.9 269 867 > > Processing: 660 3935 2707.5 3242 9787 > > Waiting: 659 3934 2707.5 3241 9785 > > Total: 926 4148 2762.9 3314 10056 > > Percentage of the requests served within a certain time (ms) > > 50% 3314 > > 66% 4803 > > 75% 6077 > > 80% 6369 > > 90% 8963 > > 95% 9699 > > 98% 10056 > > 99% 10056 > > 100% 10056 (longest request) > > > > > > Thanks! > > Paras. > > On Mon, Sep 13, 2010 at 1:33 PM, John List <johnl...@gulfbridge.net> > wrote: > >> > >> On 09/13/2010 12:41 PM, Paras pradhan wrote: > >> > >> John, > >> I am testing to support 300 requests / second. concurrent parameter in > ab > >> does test number of Established tcp session per second if I am not > mistaken. > >> Thanks > >> Paras. > >> > >> Sorry again, Paras. This time I erred in two ways: I said you were > testing > >> at 300 connections per second. Actually, your -c parameter is 100 so you > are > >> testing at 100 concurrent requests (not requests per second; the actual > >> number of requests per second is probably far higher). > >> > >> Suggestions: > >> > >> Post your complete ab results back here > >> You might want to run your test against a (non-encrypted) http url (as > >> well as the encrypted https url you are using) to see to see if the > >> encryption process is a significant part of the processing time. (I'm > >> guessing it will be.) > >> > >> FWIW, I'm posting my own ab results below. I ran ab from my desktop > >> against a simple login screen on a webserver running on a dual-core > laptop > >> on the same local network using a command of "ab -t 10 -c 30 > >> http://192.168.1.3/Login.html". As you can see, I was actually > completing > >> 573 requests per second!: > >> > >> # ab -t 10 -c 30 http://192.168.1.3/Login.html > >> 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 192.168.1.3 (be patient) > >> Completed 5000 requests > >> Finished 5734 requests > >> > >> > >> Server Software: Apache/2.2.12 > >> Server Hostname: 192.168.1.3 > >> Server Port: 80 > >> > >> Document Path: /Login.html > >> Document Length: 2409 bytes > >> > >> Concurrency Level: 30 > >> Time taken for tests: 10.002 seconds > >> Complete requests: 5734 > >> Failed requests: 0 > >> Write errors: 0 > >> Total transferred: 16439378 bytes > >> HTML transferred: 13813206 bytes > >> Requests per second: 573.30 [#/sec] (mean) > >> Time per request: 52.328 [ms] (mean) > >> Time per request: 1.744 [ms] (mean, across all concurrent > requests) > >> Transfer rate: 1605.14 [Kbytes/sec] received > >> > >> Connection Times (ms) > >> min mean[+/-sd] median max > >> Connect: 0 0 0.4 0 7 > >> Processing: 4 50 68.6 41 1918 > >> Waiting: 3 49 68.4 41 1918 > >> Total: 4 50 68.6 42 1919 > >> > >> Percentage of the requests served within a certain time (ms) > >> 50% 42 > >> 66% 46 > >> 75% 50 > >> 80% 53 > >> 90% 81 > >> 95% 120 > >> 98% 180 > >> 99% 282 > >> 100% 1919 (longest request) > >> # > >> > >> I hope this helps. (And thanks for introducing me to ab!) > >> > >> John > >> > >> On Fri, Sep 10, 2010 at 5:34 PM, John List <johnl...@gulfbridge.net> > >> wrote: > >>> > >>> On 09/10/2010 06:09 PM, Paras pradhan wrote: > >>> > >>> On Fri, Sep 10, 2010 at 4:58 PM, John List <johnl...@gulfbridge.net> > >>> wrote: > >>>> > >>>> Which processes are using the processors the most? (I suspect your > imap > >>>> server might be more responsible than apache.) > >>>> > >>>> John Hicks > >>> > >>> True . But I am only hitting the login.php page from ab to benchmark. > >>> Thanks > >>> Paras. > >>> > >>> (Pardon me for not reading your op more carefully.) > >>> > >>> I am not familiar with ab, but after a quick read, I have one > >>> observation: > >>> > >>> You say you are building a system to support 200+ concurrent users on > >>> horde. I assume that means 200 users concurrently running horde and > >>> therefore checking their inbox every minute or so. That would be about > 3.3 > >>> requests per second. > >>> > >>> It looks to me like your ab test is testing at 300.0 connections per > >>> second. > >>> > >>> In other words, perhaps you needn't be too concerned about sluggish > >>> performance from the ab test. > >>> > >>> John Hicks > >>> > >>> > >>>> > >>>> > >>>> On 09/08/2010 03:42 PM, Paras pradhan wrote: > >>>>> > >>>>> Hi, > >>>>> > >>>>> Looking for recommendations. > >>>>> I need to serve 100-200+ concurrent users to provide php based > webmail > >>>>> client (horde). I have setup memcached and php-fastcgid for this > purpose. > >>>>> The server has four 2.2G AMD optereon cores with 8GB of memory. I am > doing > >>>>> stress test using ab as: ab -t 36000 -c 100 > https://url/h/imp/login.php. > >>>>> What I have noticed if the number of concurrent users are more than > around > >>>>> 25, I get the sluggish performance and I can see linux load rising > high to > >>>>> 25 to 30 and all the cpu cores are approximately 75% used. > >>>>> > >>>>> This is what I have in config files: > >>>>> > >>>>> mpm worker: > >>>>> -- > >>>>> <IfModule worker.c> > >>>>> StartServers 15 > >>>>> MaxClients 960 > >>>>> MinSpareThreads 75 > >>>>> MaxSpareThreads 150 > >>>>> ThreadsPerChild 64 > >>>>> MaxRequestsPerChild 5000 > >>>>> -- > >>>>> > >>>>> memcached: 4GB > >>>>> > >>>>> --- > >>>>> > >>>>> fcgid: > >>>>> > >>>>> <IfModule !mod_fastcgi.c> > >>>>> AddHandler fcgid-script .fcgi > >>>>> MaxRequestsPerProcess 10000 > >>>>> MaxProcessCount 100 > >>>>> IPCCommTimeout 240 > >>>>> IdleTimeout 240 > >>>>> ProcessLifeTime 300 > >>>>> BusyTimeout 300 > >>>>> DefaultMaxClassProcessCount 100 > >>>>> DefaultMinClassProcessCount 50 > >>>>> > >>>>> </IfModule> > >>>>> --- > >>>>> > >>>>> php-fcgid: > >>>>> > >>>>> # Number of PHP childs that will be launched. Leave undefined to let > >>>>> PHP decide. > >>>>> # DefaultInitEnv PHP_FCGI_CHILDREN 4 > >>>>> # Maximum requests before a process is stopped and a new one is > >>>>> launched > >>>>> DefaultInitEnv PHP_FCGI_MAX_REQUESTS 10000 > >>>>> ---- > >>>>> OS: RHEL 5.5 > >>>>> Apache: 2.2.3 > >>>>> PHP: 5.1 > >>>>> Mysql: 5.0 > >>>>> > >>>>> > >>>>> Will appreciate for any inputs. > >>>>> > >>>>> Thanks! > >>>>> Paras. > >>>>> > >>>> > >>>> > >>>> --------------------------------------------------------------------- > >>>> The official User-To-User support forum of the Apache HTTP Server > >>>> Project. > >>>> See <URL:http://httpd.apache.org/userslist.html> for more info. > >>>> To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org > >>>> " from the digest: users-digest-unsubscr...@httpd.apache.org > >>>> For additional commands, e-mail: users-h...@httpd.apache.org > >>>> > >>> > >>> > >> > >> > > > > > > --------------------------------------------------------------------- > The official User-To-User support forum of the Apache HTTP Server Project. > See <URL:http://httpd.apache.org/userslist.html> for more info. > To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org > " from the digest: users-digest-unsubscr...@httpd.apache.org > For additional commands, e-mail: users-h...@httpd.apache.org > >