• 27-10-2010, 20:40:07
    #10
    gerekli erişimi verdikten sonra session klasörünündeki dosya sayısını sayabilirsin ama bu gerçekten tehlikeli bir yöntem online üye sayısını sayacam diye önemli bir klasöre erişim vermek. ufak bir hata güvenlik açıklarına sebep olur.
  • 27-10-2010, 20:40:51
    #11
    THR
    Üyeliği durduruldu
    sen alıntı yaparken mesajımı editlemiştim bir daha bakar mısın?
  • 27-10-2010, 20:50:11
    #12
    Üyeliği durduruldu
    : ) hocam sizin bahsettiğinizde php.ini ayarı değil mi ?

    Efe4ka, hocam peki session klasörünün ismini "349gj45s" gibi versem ?
    Bulunamaz herhalde ?
  • 27-10-2010, 21:01:49
    #13
    Levye adlı üyeden alıntı: mesajı görüntüle
    : ) hocam sizin bahsettiğinizde php.ini ayarı değil mi ?

    Efe4ka, hocam peki session klasörünün ismini "349gj45s" gibi versem ?
    Bulunamaz herhalde ?
    şimdi istediğiniz gibi verin. bahsetmek istediğim olay bu web serverınızda 50 tane site duruyor değil mi . bunların bütün session ları aynı klasörde tutuluyor. 1. olarak online sayısında yanılma olur. 2. olarak eğer biri sitelerinizden 1 tanesinde o klasör içindeki verileri okuyabilirse diğer sitelerinizde daha açıklayacı bir örnek vereyim. bu konuda.

    50 sitenizden 1 tanesinde admin giriş yaptı.

    kötü kullanıcı ise 50 sitenizden diğer 1 tanesinde session verilerini okudu. bu session bilgilerini kullanarak diğer sitenizde kendini admin gibi giriş yapmış gösterebilir. güvenliği sağlarsanız bir sorun yok ama benim kanaatim böyle garip bir yönteme hiç gerek yok sql de 1 tablo tutarsınız girişi çıkışı kaydedersiniz hem bilgiler anlık olur . eğer SQL motorunuz yorulur ise bir stored procedure veya sql view yaratırsınız . son 10 saatteki online kullanıcıları gösterip. bütün yükü kaldırırsınız . sitenizde son 10 saatte 10000 kullanıcı bile olsa sorun olmaz. zaten 10 saatte 10bin online kişi varsa sitenizde sizin sitenizin çalışabilmesi için güçlü bir servera hatta serverlara ihtiyacı vardır. 3-4 db motoruna. hatta ve hatta kendi başına bir DB sunucusuna.
  • 27-10-2010, 21:09:35
    #14
    Üyeliği durduruldu
    hmm anladım. tamam hocam maceraya girmeyeyim öyleyse ben. mysql den devam...
    çok teşekkürler açıklayıcı bilgiler için.
  • 27-10-2010, 21:18:33
    #15
    Levye adlı üyeden alıntı: mesajı görüntüle
    hmm anladım. tamam hocam maceraya girmeyeyim öyleyse ben. mysql den devam...
    çok teşekkürler açıklayıcı bilgiler için.
    ben teşekkür ederim . bir şey yazmayı unutmuşum.

    şöyle ufak bir senaryo düşünelim. sitenizde 10bin kişi online.

    yazdığınız stored procedure bunu her 10 dk da bir cache liyor. 10 dk da bir DB yi yormadan size 10bin satır bilgi gösterebilir.

    eğer vbulletin vs gibi forumlara bakarsanız orada hep şöyle bilgiler gözükür.

    işte nebileyim.

    forumumuzda son 24 saatte 12560 kişi online. rekorumuz ise 40000 gibi. yani eski veriler gösterilir. bunun nedeni performanstan kazanmaktır. ölçekleme yapmaktır. bu ölçeği sitenin amacına göre belirlersiniz bu size kalmış bir şey ve buna göre kodlamanızı yaparsınız.
  • 27-10-2010, 21:36:44
    #16
    Üyeliği durduruldu
    hocam ben cache olayını hiç yapmadım. bilmiyorum. sanırım class yapısını kullanmak şart onun için.

    bu projede 100 den fazla online olacağını sanmıyorum zaten. her defasında mysql_num_rows ile bakmalıyım sanırım.
  • 27-10-2010, 21:47:53
    #17
    Levye adlı üyeden alıntı: mesajı görüntüle
    hocam ben cache olayını hiç yapmadım. bilmiyorum. sanırım class yapısını kullanmak şart onun için.

    bu projede 100 den fazla online olacağını sanmıyorum zaten. her defasında mysql_num_rows ile bakmalıyım sanırım.
    stored procedures u oku mysql in . indexleme yönlemlerini.
    myisam innodb türlerini projeye göre ölçeklemende lazım olur . SP ler genelde oyun gibi devamlı query yapan projelerde kullanılır. class yapısı lazım değil spagetti kod da yazsan hiç varketmez olay php değil mysql.
  • 27-10-2010, 21:55:03
    #18
    Üyeliği durduruldu
    hmm anladım hocam. çok teşekkürler