RE: requests time-out under load, no warnings in logs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



   - how is your iowait ? maybe apache is waiting for disk access.

#vmstat 1

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

 1  3   2536 698992 195040 211940    0    0     4   187    2     3 14 14 54 17

 1  0   2536 698276 195064 211984    0    0    20     0 8746  9432 27 13 43 17

 0  0   2536 697444 195084 211964    0    0    20     0 8428  8802 26 11 62  1

 0  0   2536 697196 195088 211960    0    0     4     0 7206  6812 19  8 73  0

 1  3   2536 706232 195092 211956    0    0     4  4068 5886  5305 12  7 67 14

 0 82   2536 706300 195092 211956    0    0     0   844 4534  3498  9  4 24 64

 4  0   2536 705516 195092 211956    0    0     0   584 7017  6394 17 10 14 59

 1  0   2536 705460 195092 211956    0    0     0     0 7994  8138 18 10 72  0

 0  0   2536 712564 195100 212016    0    0     8     0 6763  7027 17  8 74  0

 0  0   2536 712692 195112 212004    0    0    12     0 6201  8271 15  7 77  1

 1  1   2536 712256 195116 212000    0    0    20  2372 6276  5845 14  6 78  2

 1 32   2536 712436 195128 211988    0    0    12  1584 6633  7025 15  7  9 69

 2  4   2536 722980 195128 211988    0    0     0   592 7114  7063 16 10 10 64

 1  0   2536 722796 195140 212044    0    0    32     0 7215  7184 17  9 71  4

 5  0   2536 722300 195164 212088    0    0    24   168 8066  9076 25 11 61  2

 1  0   2536 722180 195168 212084    0    0     4     0 7529  7952 19 10 70  0

 2 27   2536 720712 195168 211268    0    0     0  3792 6718  6542 20 11 28 41

 4  7   2536 730984 195168 211268    0    0     0  1616 10398 10589 44 22  0 35

 3  5   2536 731864 195172 211264    0    0     4   740 8842 10712 27 14  4 54

 1  2   2536 732116 195184 211320    0    0    12    40 7049  7312 17  9 43 32

 

This is when apache is running normally. Iowait does not seem to be a problem, but I did not check during the crashes.

 

   - are your sure that you don't have a network bottleneck ? load balancer, firewall, network interface,..

 

We have a Twisted server running on the same machine, and it works OK during the crashes- so it does not seem to be a network bottleneck. Plus, system log shows only this during crashes, which indicates apache-specific bottleneck:

Oct  1 13:21:56 web10 kernel: possible SYN flooding on port 80. Sending cookies.

Oct  1 13:22:56 web10 kernel: possible SYN flooding on port 80. Sending cookies.

Oct  1 13:23:57 web10 kernel: possible SYN flooding on port 80. Sending cookies.

 

  - do you serve static files only with you apache ? if you use php, cgi,mod_jk,mysql,... You should have a look to them maybe they are hanging up.

We are using mod_python. I posted to mod_python list as well.

 

  - if you use thread safe modules (not php) and if you have to serve a lot of little requests, maybe you can consider to use mpm worker instead of prefork.

 

This is a good idea. We will try it. Does it give significant performance bonus? Our average request size is only 1-2K.

 

Alec

 

 

From: Bj [mailto:bjkhanz@xxxxxxxxx]
Sent: Monday, October 01, 2007 3:15 AM
To: users@xxxxxxxxxxxxxxxx
Subject: Re: requests time-out under load, no warnings in logs

 


Hi,

When your server is slow:
   - how is your iowait ? maybe apache is waiting for disk access.
   - are your sure that you don't have a network bottleneck ? load balancer, firewall, network interface,..
  - do you serve static files only with you apache ? if you use php, cgi,mod_jk,mysql,... You should have a look to them maybe they are hanging up.
  - if you use thread safe modules (not php) and if you have to serve a lot of little requests, maybe you can consider to use mpm worker instead of prefork.

--
Bj

On 10/1/07, Alec Matusis <matusis@xxxxxxxxx> wrote:

Hi Christian,

> How does your apache look memory-wise in top/htop?

When Apache is "slow", it has about 200 processes with 11-15MB RSS each, soat least 1GB of physical RAM should be unused.
The load average drops from normal 16.0 (this is a 4 CPU machine) to only 6.0 when apache becomes "slow".


It would be interesting to see an example of a reasonable choice for MaxMemFree, after 2 days of searching in Google I cannot find any guidelines for setting it.



> -----Original Message-----
> From: Christian Folini [mailto:christian.folini@xxxxxxx]
> Sent: Sunday, September 30, 2007 11:55 PM
> To: users@xxxxxxxxxxxxxxxx
> Subject: Re: requests time-out under load, no warnings in
> logs
>
> Hey Alec,
>
> This looks like a tricky problem. Have you looked at the traffic
> using tcpdump or ethereal when the machine hangs? You might
> also try out mod_forensic or mod_security and add mod_security
> internal timestamps to the access-log. Using these logs you will
> get a clearer idea where it hangs.
>
> How does your apache look memory-wise in top/htop?
> Are you sure it is not an application issue - even if it shows
> serving static files. A reverse proxy setup for testing purposes
> could seperate application and static file serving to
> give you a clearer idea in this regard.
>
> These are just a lot of ideas. I do not really know how to
> solve your problem, but this would give you a clearer idea
> of the problem.
>
> I am not familiar with best practice values for MaxMemFree.
>
> regs,
>
> Christian
>
>
>
> On Sun, Sep 30, 2007 at 03:54:59PM -0700, Alec Matusis wrote:
> > We are running a busy Apache/2.0.54 server on 2.6.9 kernel, that
> suddenly
> > becomes very slow- requests either time out, or it takes 10s to serve
> a 1K
> > thumbnail.
> > It is usually correlated with load spikes, but not perfectly (by
> looking at
> > the bandwidth graph)
> > Then it requires a stop/start, and it becomes fast again.
> > This has been happening before, and it was always accompanied with
> >
> > [error] server reached MaxClients setting, consider raising the
> MaxClients
> > setting
> >
> > in the apache log.
> >
> > We raised MaxClients    from 200 to 300, and now it happens with no
> warning
> > in any logs at all, except with the usual
> >
> > web10 kernel: possible SYN flooding on port 80. Sending cookies. in
> > /var/log/messages (this has always happened when apache hung from
> overload).
> >
> > What worries me is that there are no log messages in apache logs at
> all when
> > this happens.
> >
> > This is the relevant part of httpd.conf
> >
> > ServerLimit 300
> > # we are using prefork MPM
> > <IfModule prefork.c>
> > StartServers          10
> > MinSpareServers       5
> > MaxSpareServers       20
> > MaxClients            300
> > MaxRequestsPerChild   10000
> > MaxMemFree            2560
> > </IfModule>
> >
> > The server has 4GB of RAM and 4GB of swap. When apache "crashes" i.e.
> > becomes very slow, the swap size is still 0 and vmstat shows no
> swapping.
> > I suspect the problem may be in
> >
> > MaxMemFree   2560
> >
> > but then I would expect some kind of "out of memory" errors in the
> logs?
> > Another question: what is the good choice of MaxMemFree value? We
> want to
> > leave 512MB-1GB or RAM on this machine for other tasks.
> >
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > 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-unsubscribe@xxxxxxxxxxxxxxxx
> >    "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
> > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx
> >
>
> ---------------------------------------------------------------------
> 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-unsubscribe@xxxxxxxxxxxxxxxx
>    "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
> For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx


---------------------------------------------------------------------
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-unsubscribe@xxxxxxxxxxxxxxxx
   "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx

 


[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux