Konkurentni pristup k souborum
Petr Burdik
pet na petujek.net
Sobota Říjen 11 09:50:02 CEST 2008
Ahoj Pavle,
za tento nazor moc dekuju. Pomohl jsi mi prave doresit dilema. Jestli to
takto podobne udelat.
Prima den
Pet
Dne Sat, 11 Oct 2008 09:49:03 +0200 Pavel Kolesnikov
<pavel.kolesnikov na gmail.com> napsal/-a:
> Opravdu potrebujete zamykani? Co treba takhle:
> - pri kazde zmene vytvorit novy soubor a po vytvoreni souboru
> zaktualizovat
> zaznam v databazi, aby ukazoval na novou verzi
> - pri smazani pouze smazat zaznam v databazi
> - v obou pripadech do nejakeho logu zapsat cestu k predchozi verzi
> obrazku
> - pravidelne asynchronne mazat jiz neplatne verze obrazku
>
> Samozrejme predpokladam, ze ve skutecnosti nicemu nevadi, kdyz si jeden
> uzivatel v klidu dotahne soubor zatimco nekdo jiny mezitim ten soubor
> smazal
>
> Pavel
>
> 2008/10/10 Jaroslav Hurdes <java na ataco.cz>:
>> Zdravim, resim situaci, ze potrebuji ukladat desitky az stovky GB
>> obrazku,
>> ktere maji vazbu na data v databazi. Zatim jsem to mel udelane pres
>> ukladani
>> do databaze (BLOB). Toto reseni vyzaduje vykonnejsi databaze napr.
>> Oracle,
>> ci DB2. Dalsi moznosti je ukladani dat primo na filesystem a v databazi
>> si
>> drzet jenom cesty k souborum, coz znamena mensi zatizeni databaze.
>>
>> Tady ale poterbuji vyresit soubezny pristup k datum, kdy v jednom
>> okamziku
>> muze nekolik klientu cist data a zaroven muze prijit pozadavek na
>> zapis, ci
>> odstraneni souboru. Potrebuji vyresit zamykani souboru pri
>> modifikacich, tak
>> aby ti co ctou museli pockat, nez se operace ukonci a naopak pokud
>> nekdo jiz
>> cte data, tak aby ten co modifikuje pockal, az jsou data prectena a
>> pote se
>> provedlo uzamceni a modifikace.
>>
>> Zatim jsem na to sel pres RandomAccesFile a zamykani pres FileChannel
>> lock()
>> a release(). Muze nekdo poradit, zda je to spravna cesta, nebo zda
>> neexistuje jiz nejaka knihovana resici tento problem bud jako celek,
>> nebo
>> nizkourovnovy pristup k souborum a jejich zamykani .
>>
>> Diky Jaroslav Hurdes
>>
--
Tato zpráva byla vytvořena převratným poštovním klientem Opery:
http://www.opera.com/mail/
Další informace o konferenci Konference