Re: Performance / AB issue?
| From: | Matijn Woudt | Date: | Thu, 10 May 2012 22:18:47 +0000 |
| Subject: | Re: Performance / AB issue? | ||
| References: | 1 2 3 4 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-317838@lists.php.net to get a copy of this message | ||
On Thu, May 10, 2012 at 11:26 PM, Lars Nielsen <lars@lfweb.dk> 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.
>
That sounds like a deadlock or something.. It's also possible it is
waiting for MySQL to respond and some deadlock might happen there
> 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?
even 10.000 connections at the same time should be fine
>
> But if I restart apache then it works again... So I guess it is a
> apache/php configuration issue?
>
Did you try to run ab from the same server (with http://localhost/)
too?
Also, are you running any optimization stuff, like memcached?
- Matijn