From owner-freebsd-questions@FreeBSD.ORG Wed Jul 18 23:32:35 2007 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C8A5C16A401 for ; Wed, 18 Jul 2007 23:32:35 +0000 (UTC) (envelope-from cswiger@mac.com) Received: from mail-out4.apple.com (mail-out4.apple.com [17.254.13.23]) by mx1.freebsd.org (Postfix) with ESMTP id AB88C13C48D for ; Wed, 18 Jul 2007 23:32:35 +0000 (UTC) (envelope-from cswiger@mac.com) Received: from relay7.apple.com (relay7.apple.com [17.128.113.37]) by mail-out4.apple.com (Postfix) with ESMTP id 9EC09C6106F; Wed, 18 Jul 2007 16:32:35 -0700 (PDT) Received: from relay7.apple.com (unknown [127.0.0.1]) by relay7.apple.com (Symantec Mail Security) with ESMTP id 7FE2430420; Wed, 18 Jul 2007 16:32:35 -0700 (PDT) X-AuditID: 11807125-a121cbb0000007e5-d1-469ea313bf5d Received: from [17.214.13.96] (cswiger1.apple.com [17.214.13.96]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by relay7.apple.com (Apple SCV relay) with ESMTP id 0EF3C30413; Wed, 18 Jul 2007 16:32:34 -0700 (PDT) In-Reply-To: <2f0146460707181615j46f35036pb60a4092726981d3@mail.gmail.com> References: <2f0146460707181512x3841af57l588e4d6e67bd5884@mail.gmail.com> <2f0146460707181615j46f35036pb60a4092726981d3@mail.gmail.com> Mime-Version: 1.0 (Apple Message framework v752.2) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <8E11EDCD-3254-4EB7-B429-960AAD435156@mac.com> Content-Transfer-Encoding: 7bit From: Chuck Swiger Date: Wed, 18 Jul 2007 16:32:34 -0700 To: Michael Vaughn X-Mailer: Apple Mail (2.752.2) X-Brightmail-Tracker: AAAAAA== Cc: FreeBSD Mailing List Subject: Re: FreeBSD 6.2-STABLE && apache 2.2.4 = bad performance. Help! X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Jul 2007 23:32:35 -0000 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. 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. >> > 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? >> > 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... -- -Chuck