On 12/3/2005 11:41 AM, Michael Riess wrote:
> Alvaro Herrera schrieb:
>> Michael Riess wrote:
>>
>>> Shared memory ... I currently use 1500 buffers for 50 connections, and
>>> performance really suffered when I used 3000 buffers. The problem is
>>> that it is a 1GB machine, and Apache + Tomcat need about 400MB.
>>
>> Well, I'd think that's were your problem is. Not only you have a
>> (relatively speaking) small server -- you also share it with other
>> very-memory-hungry services! That's not a situation I'd like to be in.
>> Try putting Apache and Tomcat elsewhere, and leave the bulk of the 1GB
>> to Postgres.
>
> No can do. I can try to switch to a 2GB machine, but I will not use
> several machines. Not for a 5GB database. ;-)
What version of PostgreSQL are we talking about? If it is anything older
than 8.0, you should upgrade at least to that. With 8.0 or better try
20000 shared buffers or more. It is well possible that going from 1500
to 3000 buffers made things worse. Your buffer cache can't even hold the
system catalog in shared memory. If those 50 backends serve all those
500 apps at the same time, they suffer from constant catalog cache
misses and don't find the entries in the shared buffers either.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck@Yahoo.com #