Ladeni multithreadove aplikace
Petr Novotny
Petr.Novotny na antek.cz
Neděle Leden 23 17:19:18 CET 2000
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 23 Jan 00, at 16:02, Petr Novotny wrote:
> [*] V multithreadove aplikaci se sdilenou (single-threadovou)
> konekci na databazi tu konekci obalim mutexem, jeden thread
> pise, ostatni cekaji na mutex. V multi-forkove :-) aplikaci musim
> delat totez, jedina otazka vlastne je, jak se k te konekci dostat.
>
> Takze udelam treba tohle: "Startovni" rodic spusti nejakeho
> "demona konekce" a ma k nemu otevreny tri anonymni roury -
[snip]
... jestli to se slozitosti neprehanim.
"Startovni" rodic spusti demona konekce, udela k nemu zapisovaci
rouru a udela mutex, pokud jsou zapisy natolik velike, ze by
nemusely byt skrz rouru atomicke. (Je to mozne?) Naforkovane
deti zdedi dup()nutou tuto rouru, a treba mutex. Zapis do databaze
je bud atomicky zapis smuveneho recordu do te roury, anebo
zamceni mutexu, nekolik zapisu do roury, odemceni mutexu.
Vzhledem k tomu, ze zapis do MySQL (zrejme) nelze paralelizovat
(je to single-threadove), tak tento protokol nebude pomalejsi nez
MT aplikace a zamykani pristupu ke konekci.
-----BEGIN PGP SIGNATURE-----
Version: PGP 6.0.2 -- QDPGP 2.60
Comment: http://community.wow.net/grt/qdpgp.html
iQA/AwUBOIsqBlMwP8g7qbw/EQL8owCeMhrzDwn7rKhEBeB07EYJD2GFItEAoP8X
31YwHEFsSBgrLgXcXudb2P13
=9qTc
-----END PGP SIGNATURE-----
--
Petr Novotny, ANTEK CS
Petr.Novotny na antek.cz
http://www.antek.cz
PGP key ID: 0x3BA9BC3F
-- Don't you know there ain't no devil there's just God when he's drunk.
[Tom Waits]
Další informace o konferenci Linux