Synchronizace vystupu

Jan ' Kozo ' Vajda jvajda na somi.sk
Čtvrtek Říjen 18 08:38:53 MEST 2001


:> mam cgi, ktery dostava nejaky data pomoci POST. V dane chvili chci data
:> jen ulozit. Databazi nechci.
:> Ukladam do jednotlivych souboru, fname vytvarim takto:
:> 
:> do
:> {
:> 	$fname = sprintf( "$base/log_%08lX_%04X", time, $var );

uz ked nie databaza, tak by som to asi riesil takto:

$fname = sprintf( "$base/log_%08lX_%d_%04X", time, $$, $var );

cislo pidu v danom case nemoze byt v dvoch instanciach rovnake ..
( za predpokladu, ze nemate dva pristupy v tej istej sekunde na ten isty
  apache .. co je malo pravdepodobne pri tom pocte pristupov ... )

pripadne tam vrazit este nejaky nahodny generator ..

alebo ( a mozno najcistejsie riesenie ) pouzit File::Temp, alebo
File::MkTemp 



:> 	$var++;
:> } while( -f $fname );
:> 
:> Je to blbe (IMO) a obcas se stejne stane, ze to vyprodukuje zmrseny
:> soubor, takze to vypada, ze do nej psaly dve instance toho CGI naraz. Co
:> se tyce vytizeni, je to cca 200-300 pristupu za hodinu, ale nerovnomerne
:> rozlozenych. Delka dat je cca 10-15 kratkych radku.
:> 
:> Jak to proste udelat lip?



		                                   K O Z O 
                		    ===================================
                                      Look At Your Young Man Fighting
                                         Look At Your Woman Crying
                                       Look At Your Young Man Dying
                                    The Way They've Always Done Before



Další informace o konferenci Perl