online chronometer – coonter

Diyelim ki önemli bir şeyi bekliyorsunuz, veya çok da önemli olmayan komik bir olayı önemli hale getirmek istiyorsunuz.

Bunun için bir sitemiz var. www.coonter.net

Coonter, siz bir şeyi beklerken, onu daha önemli kılmak için saniye saniye zamanı geri sayar. Nereye giderseniz gidin, o saymaya devam edecektir. Dolayısıyla istediğiniz zaman kendi oluşturmuş olduğunuz sayaca bakıp, ne aşamada olduğunuzu, ne kadar süreniz kaldığını görebilirsiniz.

 

Eğer biraz yaratıcı ve eğlenceli bir insansanız, coonter’da size mutlaka eğlenceli birşeyler çıkacaktır.

2 hafta sonra yapacağınız halı saha maçı bir örnek olabilir. Veya okuldan mezuniyet tarihiniz olabilir. Hatta pazartesi işe gelmiş birinin cuma mesai bitimini saydırması işten bile değildir. 🙂

 

Sonuç olarak, kullanın, siz onları beklerken olaylar daha önemli hale gelsin 🙂

a different php cache class : EmCache

çalıştığm bir projede 2 kişi olarak, cache mantığının nasıl çalışması üzerine araştırmalar yapıyorduk.

Derken bu php classını yazıverdim.

http://sourceforge.net/projects/emcache/

Genel olarak bu class, diğer cachelerdeki gibi herhangi bir dosyaya serialize edip yazmıyor. Bu cache’in mantığı bir php dosyası oluşturup, sanki kodu elle yazmış gibi, kodu oraya kendisinin yazması. Böylece Object olmayan tipler için serialize-unserialize maliyetinden de kurtarılmış olunuyor.

Birkaç değişkeni bir grupta toplayıp, cache dosyası sayısındaki artıştan, ve gruplamanın getirilerinden faydalanılabilir.

2-3 tane arrayiniz var ise ve bunlar çalışan kodunuzda genel olarak hep aynı anda çağrılması (oluşturulması) gerekiyorsa, burada grup özellikleri işinizi kolaylaştıracaktır. Kullanım olarak da çok bir farkı yoktur.

Genel olarak

$emc = new EmCache("path_to_my_cache_directory");

//simple caching

if(!$var = $emc->load("name_of_my_data")){

$emc->save($var,"name_of_my_data");

}

//group caching

$commit=false;

if(!$var2 = $emc->loadFromGroup("name_of_my_data")){

$emc->collect($var2,"name_of_my_data");

$commit=true;

}

if(!$var3 = $emc->loadFromGroup("another_name_of_my_data")){

$emc->collect($var3,"another_name_of_my_data");

$commit=true;

}

if($commit){

$emc->commitGroup();

}