Received: from makus.postgresql.org ([98.129.198.125]) by malur.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1TYaWo-0007xn-Sq for pgsql-admin@postgresql.org; Wed, 14 Nov 2012 10:49:07 +0000 Received: from mailout-us.gmx.com ([74.208.5.67]) by makus.postgresql.org with smtp (Exim 4.72) (envelope-from ) id 1TYaWn-0005lZ-8C for pgsql-admin@postgresql.org; Wed, 14 Nov 2012 10:49:06 +0000 Received: (qmail 21472 invoked by uid 0); 14 Nov 2012 10:49:03 -0000 Received: from 76.255.19.161 by rms-us001 with HTTP Content-Type: text/plain; charset="utf-8" Date: Wed, 14 Nov 2012 05:49:02 -0500 From: "Kevin Grittner" Message-ID: <20121114104902.90160@gmx.com> MIME-Version: 1.0 Subject: Re: Postgre Eating Up Too Much RAM To: "Aaron Bono" ,"Postgres" X-Authenticated: #138763884 X-Flags: 0001 X-Mailer: GMX.com Web Mailer x-registered: 0 Content-Transfer-Encoding: 8bit X-GMX-UID: SRLRcFxC3zOlOQ09Lnwhwr9+IGRvb0A5 X-Pg-Spam-Score: -1.9 (-) X-Archive-Number: 201211/71 X-Sequence-Number: 40316 Aaron Bono wrote: > (there are currently a little over 200 active connections to the > database): How many cores do you have on the system? What sort of storage systeme? What, exactly, are the symptoms of the problem? Are there 200 active connections when the problem occurs? By "active", do you mean that there is a user connected or that they are actually running something? http://wiki.postgresql.org/wiki/Guide_to_reporting_problems > max_connections = 1000 If you want to handle a large number of clients concurrently, this is probably the wrong way to go about it. You will probably get better performance with a connection pool. http://wiki.postgresql.org/wiki/Number_Of_Database_Connections > shared_buffers = 256MB Depending on your workload, a Linux machine with 32GB RAM should probably have this set somewhere between 1GB and 8GB. > vacuum_cost_delay = 20ms Making VACUUM less aggressive usually backfires and causes unacceptable performance, although that might not happen for days or weeks after you make the configuration change. By the way, the software is called PostgreSQL. It is often shortened to Postgres, but "Postgre" is just wrong. -Kevin