Yes horde is based on PHP and Mysql. But the page I am hitting with ab is just the login page and no database involved.
Paras. On Tue, Sep 14, 2010 at 12:43 PM, Pablo Garcia Melga <mal...@gmail.com>wrote: > I'm not familiar with Horde, does it run against a database server ?, > based on the information you provided, there's seems to be something > else preventing the apache to serve the requests on time. > > > On Tue, Sep 14, 2010 at 2:19 PM, Paras pradhan <pradhanpa...@gmail.com> > wrote: > > 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 > >> > > > > > > --------------------------------------------------------------------- > 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 > >