• 06-07-2014, 21:54:31
    #1
    Arkadaşlar basit bir cache sistemi kullanıyorum sitem için.

    cache_dosyalar klasörüne cachelenmiş dosyaları ekliyor fakat bir süre sonra binlerce dosya olunca disk alanı tükeniyor. Bu durumda aklıma dropbox filan geldi. Bu şekilde cache dosyaları başka bi sunucuya aktarıp normal bi şekilde çekebiliyor muyuz? Bu durumdaki birine ne önerirsiniz?
  • 06-07-2014, 21:59:45
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Misafir; crontab'a komut ekleyip belirli bir süre sonunda klasörü tar.gz formatında arşivleyip klasörü temizler. scp ile farklı bir sunucuya yollayabilir veya Dropbox'ın API'sini kullanarak oraya taşıyabilirsin.
  • 06-07-2014, 22:03:15
    #3
    saintx adlı üyeden alıntı: mesajı görüntüle
    Misafir; crontab'a komut ekleyip belirli bir süre sonunda klasörü tar.gz formatında arşivleyip klasörü temizler. scp ile farklı bir sunucuya yollayabilir veya Dropbox'ın API'sini kullanarak oraya taşıyabilirsin.
    ne zaman sileceğim hiç belli olmuyor. ve sürekli yenilenmesi gerekiyor. teşekkürler fakat bu istediğim gibi olmayacak sanırım. düşününce çok mantıklı da gelmedi zaten.
  • 07-07-2014, 00:04:14
    #4
    ylv
    Üyeliği durduruldu
    http://codepoets.co.uk/2011/php-serialization-igbinary/

    verileri statik html olarak değil dizi (çift boyutlu dizide olabilir) olarak saklarsanız

    Native PHP :

    PHP serialized in 2.91 seconds
    PHP unserialized in 6.43 seconds
    serialized “String” size : 20769

    Igbinary :

    WIN igbinary serialized in 1.60 seconds
    WIN igbinrary unserialized in 4.77 seconds
    WIN serialized “String” Size : 4467


    aradaki fark dağlar kadar, bizzat her yazdığım scriptte cache kısmında kullanıyorum.

    http://pecl.php.net/package/igbinary


    en önemlisi cache dizini en az 2 alt dizinlerle bölmelendirin. her cache dosyasını aynı klasörde tutarsanız olmaz.
  • 07-07-2014, 00:26:07
    #5
    Cache dosyalarını okurken, dosya tarihini okuyup belirttiğin tarihten küçükse otomatik olarak silebilirsin...
    Aşağıdaki kod ile dosyanın timestamp olarak tarihini alabilirsin. Ve bundan sonra if else ile kontrol ettirip silebilirsin.
    $dosyatarihi = filemtime("cache/dosya.uzanti");
    if ( $dosyatarihi < (time()-3600) ) {
     // dosya 1 saatten önce ise sil
      unlink("cache/dosya.uzanti");
    }
    Kolay gelsin