X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (mx1.hub.org [200.46.208.251]) by postgresql.org (Postfix) with ESMTP id 402E99FA5BA for ; Sat, 3 Jun 2006 09:43:39 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.208.251]) (amavisd-new, port 10024) with ESMTP id 61765-03 for ; Sat, 3 Jun 2006 09:43:27 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from skunk.mtbrook.bozemanpass.com (unknown [69.145.82.195]) by postgresql.org (Postfix) with ESMTP id 34E1E9FA311 for ; Sat, 3 Jun 2006 09:43:24 -0300 (ADT) Received: from [69.145.82.253] (unknown [69.145.82.253]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by skunk.mtbrook.bozemanpass.com (Postfix) with ESMTP id 97A336C8007 for ; Sat, 3 Jun 2006 05:43:22 -0700 (PDT) Message-ID: <448183EC.3030109@boreham.org> Date: Sat, 03 Jun 2006 06:43:24 -0600 From: David Boreham User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en MIME-Version: 1.0 To: pgsql-performance@postgresql.org Subject: Re: scaling up postgres References: <200606030931.k539V38Y007877@smtp2.planet.net.tn> In-Reply-To: <200606030931.k539V38Y007877@smtp2.planet.net.tn> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200606/22 X-Sequence-Number: 19379 >I cannot scale beyond that value and the funny thing, is that none of the >servers is swapping, or heavy loaded, neither postgres nor apache are >refusing connexions. > > Hearing a story like this (throughput hits a hard limit, but hardware doesn't appear to be 100% utilized), I'd suspect insufficient concurrency to account for the network latency between the two servers. Also check that your disks aren't saturating somewhere (with iostat or something similar). You could run pstack against both processes and see what they're doing while the system is under load. That might give a clue (e.g. you might see the apache processs waiting on a response from PG, and the PG processes waiting on a new query to process). Since you've proved that your test client and apache can handle a much higher throughput, the problem must lie somewhere else (in posgresql or the interface between the web server and postgresql).