Re: Tuning for mid-size server - Mailing list pgsql-performance

From scott.marlowe
Subject Re: Tuning for mid-size server
Date
Msg-id Pine.LNX.4.33.0310211131260.10645-100000@css120.ihs.com
Whole thread Raw
In response to Re: Tuning for mid-size server  (Josh Berkus <josh@agliodbs.com>)
List pgsql-performance
On Tue, 21 Oct 2003, Josh Berkus wrote:

> Anjan,
>
> > From what I know, there is a cache-row-set functionality that doesn't
> > exist with the newer postgres...
>
> What?  PostgreSQL has always used the kernel cache for queries.
>
> > Concurrent users will start from 1 to a high of 5000 or more, and could
> > ramp up rapidly. So far, with increased users, we have gone up to
> > starting the JVM (resin startup) with 1024megs min and max (recommended
> > by Sun) - on the app side.
>
> Well, just keep in mind when tuning that your calculations should be based on
> *available* RAM, meaning RAM not used by Apache or the JVM.
>
> With that many concurrent requests, you'll want to be *very* conservative with
> sort_mem; I might stick to the default of 1024 if I were you, or even lower
> it to 512k.

Exactly.  Remember, Anjan, that that if you have a single sort that can't
fit in RAM, it will use the hard drive for temp space, effectively
"swapping" on its own.  If the concurrent sorts run the server out of
memory, the server will start swapping process, quite possibly the sorts,
in a sort of hideous round robin death spiral that will bring your machine
to its knees as the worst possible time, midday under load.  sort_mem is
one of the small "foot guns" in the postgresql.conf file that people tend
to pick up and go "huh, what's this do?" right before cranking it up.


pgsql-performance by date:

Previous
From: "scott.marlowe"
Date:
Subject: Re: Tuning for mid-size server
Next
From: Andrew Sullivan
Date:
Subject: Re: Tuning for mid-size server