Re: Performance / AB issue?

From: Date: Fri, 11 May 2012 10:31:33 +0000
Subject: Re: Performance / AB issue?
References: 1 2 3 4 5 6 7 8  Groups: php.general 
Request: Send a blank email to php-general+get-317845@lists.php.net to get a copy of this message
> On Fri, May 11, 2012 at 9:53 AM, Camilo Sperberg <unreal4u@gmail.com> > wrote: >> >> >> Sent from my iPhone 5 Beta [Confidential use only] >> >> On 11 mei 2012, at 07:09, "Lars Nielsen" <lars@lfweb.dk> wrote: >> >>> >>>> >>>> On 10 mei 2012, at 23:26, Lars Nielsen wrote: >>>> >>>>> >>>>>> >>>>>> >>>>>> Sent from my iPhone 5 Beta [Confidential use only] >>>>>> >>>>>> On 10 mei 2012, at 17:40, Matijn Woudt <tijnema@gmail.com> wrote: >>>>>> >>>>>>> On Thu, May 10, 2012 at 9:04 AM, Lars Nielsen <lars@lfweb.dk> >>>>>>> wrote: >>>>>>>> Hi there, >>>>>>>> >>>>>>>> I have apache-2.22/php 5.3.10 set up on a dedicated server but I >>>>>>>> have >>>>>>>> a >>>>>>>> strange issue. >>>>>>>> >>>>>>>> I have made a Drupal 7 site with a mysql db. >>>>>>>> >>>>>>>> If I stress-test the site with : ab -c 1 -n 150 >>>>>>>> http://sitename/ >>>>>>>> it >>>>>>>> works >>>>>>>> fine. >>>>>>>> If I stress-test the site with : ab -c 2 -n 20 >>>>>>>>http://sitename/ it >>>>>>>> kills >>>>>>>> apache. >>>>>>>> If I stress-test the site with : ab -c 50 -n 1500 >>>>>>>> http://sitename/static.html it >>>>>>>> works fine. >>>>>>>> >>>>>>>> I have set apache's errorlog to debug. But it writes nothing, >>>>>>>> either >>>>>>>> in >>>>>>>> the virtualhost or in the server-file. >>>>>>>> >>>>>>>> Can anyone give a hint about what can be wrong? >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> What do you mean with 'kills apache', does it terminate >>>>>>> apache or >>>>>>> does >>>>>>> apache hang (eg. 100% cpu), and respond normal after the stress >>>>>>> test >>>>>>> is over? >>>>>>> And what is the index of your site? A php script, or..? Do you have >>>>>>> ModRewrite redirects etc? >>>>>>> >>>>>>> - Matijn >>>>>>> >>>>>>> -- >>>>>>> PHP General Mailing List (http://www.php.net/) >>>>>>> To unsubscribe, visit: >>>>>>> http://www.php.net/unsub.php >>>>>>> >>>>>> >>>>>> Can you visit the site normally? Try less verbosing in apache, that >>>>>> is >>>>>> pretty intensive, but as you can benchmark a static file well (with >>>>>> moderate high settings), i assume it is some configuration problem >>>>>> in >>>>>> drupal. >>>>>> >>>>>> Greeting. >>>>>> -- >>>>>> PHP General Mailing List (http://www.php.net/) >>>>>> To unsubscribe, visit: >>>>>> http://www.php.net/unsub.php >>>>>> >>>>>> >>>>> >>>>> Hi, >>>>> >>>>> I can visit the site normaly, but with 2-3 concurrent ab test it >>>>> fails. >>>>> seen from 'ps' and 'htop' it seems that both apache and >>>>> mysql >>>>> continues >>>>> to >>>>> run normaly but it doesnt respond. >>>>> >>>>> If i run netstat -an after the test it shows this : >>>>> Active Internet connections (servers and established) >>>>> Proto Recv-Q Send-Q Local Address           Foreign Address >>>>>  State >>>>> tcp        0      0 0.0.0.0:22           >>>>>    0.0.0.0:* >>>>>        LISTEN >>>>> tcp        0      0 127.0.0.1:25           >>>>>  0.0.0.0:*   >>>>>      LISTEN >>>>> tcp        0      0 127.0.0.1:3306         >>>>>  0.0.0.0:*   >>>>>      LISTEN >>>>> tcp        0      0 0.0.0.0:80           >>>>>    0.0.0.0:* >>>>>        LISTEN >>>>> tcp        1      0 x.x.x.x:80       >>>>>  x.x.x.x:39237   >>>>> CLOSE_WAIT >>>>> tcp        1      0 x.x.x.x:80       >>>>>  x.x.x.x:39236   >>>>>  CLOSE_WAIT >>>>> tcp        0      0 x.x.x.x:22       >>>>>  x.x.x.x:47383   >>>>>  ESTABLISHED >>>>> tcp        0      0 127.0.0.1:80           >>>>>  127.0.0.1:34775 >>>>> ESTABLISHED >>>>> tcp        1      0 x.x.x.x:80       >>>>>  x.x.x.x:39300   >>>>>  CLOSE_WAIT >>>>> ESTABLISHED >>>>> tcp        0      0 127.0.0.1:34775         >>>>> 127.0.0.1:80 >>>>> ESTABLISHED >>>>> tcp        0      0 x.x.x.x:80       >>>>>  x.x.x.x:39330   >>>>>  ESTABLISHED >>>>> tcp6       0      0 :::22               >>>>>     :::* >>>>> LISTEN >>>>> tcp6       0      0 ::1:25               >>>>>    :::* >>>>> LISTEN >>>>> >>>>> So it does seem like there should be room for new tcp connections? >>>>> >>>>> But if I restart apache then it works again... So I guess it is a >>>>> apache/php configuration issue? >>>>> >>>>> -- >>>>> Med venlig hilsen / Best Regards >>>>> >>>>> LFWeb >>>>> Lars Nielsen >>>>> Thorsensvej 30 >>>>> 4800 Nykøbing Falster >>>>> Tlf: +45 20 64 85 76 >>>>> email : lars@lfweb.dk >>>>> www : http://www.lfweb.dk >>>>> >>>>> >>>>> -- >>>>> PHP General Mailing List (http://www.php.net/) >>>>> To unsubscribe, visit: >>>>> http://www.php.net/unsub.php >>>>> >>>> >>>> Have you tried benchmarking a really simple php page, such as >>>> >>>> <?php echo 'hello world'; ?> >>>> >>>> ? >>>> >>>> It that works, than it is definitely an issue in Drupal's >>>> configuration >>>> and not in PHP/Apache. Additionally, you could check what happens when >>>> you >>>> try to establish a session or make a database call to rule out those >>>> as >>>> well, just make really simple tests that you know wouldn't fail and >>>> run ab >>>> on them. >>>> >>>> Greetings. >>>> >>>> >>>> -- >>>> PHP General Mailing List (http://www.php.net/) >>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>> >>>> >>> Thanks! >>> >>> Now I have made >>> <?php >>>  echo "Hey from PHP!"; >>> ?> >>> >>> It runs fine from a little concurrency. But with "-c 5 -n 500" it fails >>> after 308 requests! >>> >>> >>> >>> Best Regards / Med venlig hilsen >>> >>> LFWeb >>> Lars Nielsen >>> >>> >>> -- >>> PHP General Mailing List (http://www.php.net/) >>> To unsubscribe, visit: http://www.php.net/unsub.php >>> >> >> Have you tried benchmarking from localhost? Do you have any active >> firewall? Selinux? Shorewall? Anything that could block a ddos attack? >> > > A firewall is not the case here. He's testing with -c 2 and is getting > errors, with -c 50 on a static file not. Also, blocking a DDOS attack > at only 50 connections is way too low, so I don't think that would > happen. > > - Matijn > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > Php is running as mod_php under an apache worker configuration. Med venlig hilsen LFWeb Lars Nielsen

« previous php.general (#317845) next »