Apache+Postgres a spousta requestu

Milan Kerslager milan.kerslager na pslib.cz
Pondělí Prosinec 9 21:55:58 CET 2002


On Mon, Dec 09, 2002 at 07:15:43PM +0100, Petr Stupka wrote:

> Dnes po spusteni systemu jsem bezmocne prihlizel jak se prihlasuji cca
> 3 stovky uzivatelu jeden pres druheho. Webove servery byly naprosto v
> pohode, dokonce i kdyz jsem jeden ubral.  Kazda stranka dela nejake
> selecty z DB a par insertu a updatu.  No a databaze to samozrejme
> prestala stihat.  Nemate nekdo zkusenosti, jak se da PostgreSQL
> "vyladit", aby neco takoveho vubec stihl vyrizovat, pokud teda vubec?
> V pripade ze ne, myslite, ze treba Oracle, nebo jina DB by neco
> takoveho ustala lepe?  Podle odhadu z dneska bych potreboval, aby ta
> DB vyrizovala cca 300-400 porad klikajicich uzivatelu s cca 15-20 sql
> prikazy na stranku.

Udelejte si EXPLAIN na vsechny pouzivane dotazy a podivejte se, kde
vsude se NEpouzivaji indexy. Pak potrebne indexy vytvorte (typicky pro
cizi klice a pro vsechny polozky vyskytujici se v AND podminkach).
Pokuste se optimalizovat SQL dotazy.

Pokuste se zjednodusit a snizit pocet SQL operaci na nejpouzivanejsich
strankach, omezte pocty spojeni s databazi, pripadne omezte pomoci LIMIT
a OFFSET pocet radku vystupujicich z SQL dotazu.

Mozna by sly nektere udaje "predgenerovat" pomoci triggeru do pomocnych
tabulek (takze by to neohrozilo konzistenci a zaroven by se to
urychlilo).

Dejte tomu stroji tolik pameti, abyste vyloucil swapovani a v lepsim
pripade abyste dostal celou databazi do cache :-)

Pokud nemate > 4GB RAM, nepouzivejte bigmem jadra, penalizuje to vykon.

-- 
                        Milan Kerslager
                        E-mail: milan.kerslager na pslib.cz
                        WWW:    http://www.pslib.cz/~kerslage/


Další informace o konferenci Linux