Vycisteni DB session

Jan Serak jan.serak na pikebo.cz
Pátek Únor 17 14:13:12 CET 2006


Jan Kasprzak wrote:
> 	Jak tohle ruzne databaze resi? Mam na mysli zejmena Pg a Oracle.
> Mam verit aplikaci ze po sobe nezanecha neporadek? Nebo naopak ztrata
> vykonu neni tak velka a je lepsi pro jistotu uzavrit spojeni vzdy?

U Oracle je nejvetsi zatez pri vytvareni sessiony spojene s vyrobenim
backgroundoveho procesu a jeho pripojeni k SGA. Proto vymysleli (tusim
pocinaje Oracle8i R2) shared server mode, ten "klasicky", znamy z
Oracle7, pak pojmenovali jako dedicated server mode.

Kdyz instance jede ve shared server modu, obsluhuje jeden backgroundovy
proces vice sessionu, ktere mohou libovolne vznikat a zanikat a tento
backgroundovy proces stale zije. Odbourava se tim prave ta rezie spojena
se spravou procesu dedikovaneho jedine sessione. Je to ovsem dost
alchymie vyladit maximum konkurentnich sessionu jednomu backgroundovemu
procesu vs. pocet backgroundovych procesu.

Pokud aplikaci neznas, tak je lepsi ji neverit. Vsechny globalni
promenne ve vsech PL/SQL packagich jsou u Oracle soucasti sessionoveho
kontextu, inicializacni kod packagi se provadi pouze pri vzniku
sessiony. Pokud tohle nemas pod kontrolou, persistentni sessiony nebrat.

Sherry




Další informace o konferenci Databases