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