On 7/19/07, Chuck Swiger <[EMAIL PROTECTED]> wrote:

On Jul 18, 2007, at 4:15 PM, Michael Vaughn wrote:
>> Your Apache processes are huge; mine typically stay under 20MB in
>> VSIZE even with PHP loaded (this is Apache-2.0.59 + PHP 4.4.7 or PHP
>> 5.2.x).  I suspect your PHP app(s) are leaking memory or otherwise
>> have some significant problems with the way they are coded.
>
> The SIZE is huge; What they really use is about 20-30Mb as would be
> expected.

I tend to see 20MB VSIZE and 15-18 MB RES; 140MB VSIZE and 20MB RES
means 120MB is either swapped out, allocated but never referenced, or
in "inactive" memory state.


With apache 1.3 I see about 80K size and 35-40K RES (on a 6.2-STABLE
server as of Mon
Feb 26 02:46:31 UTC 2007, dual cpu i386).

That memory profile of your apache is surprising and resembles only a
few cases I ran into, where people were writing huge Perl+DBD/DBI
scripts via mod_perl that inflated RAM usage significantly and caused
similar problems until some sanity checking and limiting of result
sets was implemented in their code.


60M come from pecl-APC (apc.shm_size
= 60), which I've tried setting at 30, and disabling via apc.enabled=0
, both to no avail.

I have, as mentioned before, disabled all the apache modules I did not
need (a quick grep ^LoadModule and ^#LoadModule shows 35 enabled vs 16
disabled) .

> I had to lower MaxClients on apache substancially from 128 to 32,
>> > or loads would quickly go to 40+. (Other servers with dual cpus
>> instead of
>> > quad and apache 1.3 on freebsd 6.0 don't have this problem)
>>
>> The fact that your server starts dogging out around 40 processes is
>> not surprising-- 40 * ~140MB per httpd child = 5600 MB, which exceeds
>> the available physical memory in the system, at which point you start
>> swapping excessively and the performance is going to plummet.
>
> Swap: 8000M Total, 8000M Free

OK-- was this under your 30+ simultaneous clients load where you
start seeing problems, or was this at a point where the system was
closer to idle?



CPU states: 15.6% user, 0.0% nice, 79.2% system, 0.8% interrupt, 4,4%
idleSwap: 8000M Total,
8000M Free

Taken right now, with a load of 10.18 and 34 apache processes. Swap was the
first thing I checked, it *never* gets used at all.

Compare with the other server on 6.2-STABLE/i386 apache 1.3:

CPU states: 15.4% user, 0.0% nice, 21.3% system, 2.1% interrupt, 61.2% idle

Huge difference, and the server that's performing well is more loaded than
the one with problems, running on inferior hardware (2cpu vs 4cpu).





> Am I the only one getting terrible performance with apache2 on
>> > FreeBSD 6 ?
>>
>> Apache-2.0 + PHP does just fine for me; I'm not sure that Apache-2.2
>> + PHP5 has been as well tested or is as lightweight in resources as
>> the older Apache 1.3 or 2.0 flavors are.  It might be worth
>> downgrading to an older Apache to test things out, but it really does
>> sound like the web app you've got is the problem more than FreeBSD 6
>> or the rest of your infrastructure....
>
> I might give 2.0 a go; I felt this was worth mentioning because
> most of the cpu time is spent on system, even with just 32 MaxClients.
>
>  Do note I mentioned the same app runs on inferior, with loads of
> 0-4 (not optimal, but there is no noticeable slowdown there) on
> FreeBSD 6.0/i386 apache 1.3 (this is 6.2-STABLE/amd64 apache
> 2.2.4), and that is also part of the reason I went ahead and mailed
> the list. It doesn't make sense that a server with twice the ram,
> twice the processors and a recent OS version is spending 70% of the
> time in system% whereas the old servers running for 400+ days spend
> about 25% in system%.

True enough.  There's a fair difference in memory profile between the
32-bit x86 flavor of FreeBSD and the AMD64 flavor, although I
wouldn't expect it to result in such an extreme difference.  It'd be
interesting to see how the 32-bit version of 6.2 does and whether it
makes a noticable change, if you get a chance to switch out for
testing...


I can't trash this server and install the i386 version on it.

Tthe closer I have is the 6.2-STABLE
server (exact date mentioned above) which runs on a dual xeon with
4GB ram, on i386. That one is way more loaded and the load is usually
around 1-4, without noticeable slowdowns.


Mark
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to