Thread-safe – zámky pomocí prázdných souborů?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Honza Kuchař
Člen | 1662
+
0
-

Ahoj,
řeším thread-safe problém (ano pořád) pluginu MultipleFileUploader. Můj dotaz zní. Může se stát, že se vytvoří 2 soubory naráz ve file systému? Tzn. dává logiku to, že budu do jedněch souborů ukládat a další soubory používat jako zámky? (tuto logiku jsem se pokusil implementovat, ale zdá se, že než se soubor stačí vytvořit, tak už se další proces ujme kontroly nad souborem, tzn. ze zhruba 40% ztráty informací o souboru se ztráta snížila asi na 0.3%. Ale to znamená, že to prostě pořád není thread-safe)

Další možnost je udělat ukládání dat Multiple File Uploaderu pomocí SQLite. Co na to říkáte? Je SQLite thread-safe? Zjevně je: http://www.sqlite.org/faq.html#q6, dělal už někdo něco takového s SQLite? Dívám se zámky to podporuje. Nette už teď taky SQLite podpodoruje. Dibi SQLite taky podporuje. Myslím, že to asi předělám na SQLite a bude pokoj. Použít SQLite 2 nebo 3?

srigi
Nette Blogger | 558
+
0
-

honzakuchar napsal(a):

Další možnost je udělat ukládání dat Multiple File Uploaderu pomocí SQLite. Co na to říkáte? Je SQLite thread-safe? Zjevně je: http://www.sqlite.org/faq.html#q6, dělal už někdo něco takového s SQLite? Dívám se zámky to podporuje. Nette už teď taky SQLite podpodoruje. Dibi SQLite taky podporuje. Myslím, že to asi předělám na SQLite a bude pokoj. Použít SQLite 2 nebo 3?

Siel by som cestou SQLite, ale pls bez zavislosti na Dibi. Nie kazdy (ja napr.) Dibi pouziva a je blbost kvoli komponentu byt zavisly od 3rd party kniznice (teda v tomto konkretnom pripade). PHP predsa poskytuje PDO. Dalsou moznostou je shared memeory APC. ale to uz strielam od boku. Ak SQLite, tak ten co je v PHP 5.2.12.

Editoval srigi (22. 2. 2010 23:33)

Honza Kuchař
Člen | 1662
+
0
-

Jo na APC jsem zapomněl. Ale to asi tebude nejvhodnější. Není zdaleka na všech serverech.

Ad. dibi: Mno uvidíme. Bez dibi se mi s tím moc nechce dělat. Uvidíme jak to půjde. Nejdřív to napíšu s dibi a pak to případně přepíšu. (dibi toho dělá dost za mě)

Honza Kuchař
Člen | 1662
+
0
-

Další verze MultipleFileUploaderu: https://forum.nette.org/…iewtopic.php?…

Editoval honzakuchar (23. 2. 2010 22:58)

Honza Kuchař
Člen | 1662
+
0
-

Thread-safe vytváření souborů se dá pomocí http://php.net/…on.fopen.php a režimu x/x+.

Editoval Honza Kuchař (13. 5. 2010 22:23)