• 30-11-2018, 15:15:36
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar, bir çok php sitemini inceledim, bunların arasında vbulletin, xenforo, mybb, opencart gibi yazılımlar ile birlikte farklı kaynaklara da göz attım ancak hiç birinde MySQL de mevcut olan procedure, trigger yada view kullanıldığını görmedim.



    Merak ediyorum bunları kullanmamalarının bir sebebimi mi var yoksa kullanmak mı istemiyorlar.
  • 30-11-2018, 15:43:22
    #2
    trigger, prosedur filan db üzerinde yapılır. ihtiyaç halinde yazılır.
  • 30-11-2018, 15:54:28
    #3
    susmus adlı üyeden alıntı: mesajı görüntüle
    trigger, prosedur filan db üzerinde yapılır. ihtiyaç halinde yazılır.

    evet onu biliyorum, ve ne ilginçtir ki hiç kimse ihtiyaç duymamış yazmaya. Acaba uzak durmalarının bir sebebi varda ben mi bilmiyorum
  • 30-11-2018, 16:08:42
    #4
    Yapacağınız iş/kapasite ve işlemlerin boyutuna doğru metodu seçmeniz önemli.
    Mesala standart bir veritabanı modellemesinde Mysql/(Apache/Ngix/ISS) server üzerine iş yükünü atmaktasınız.
    Ama diğer türlü Mysql server üzerine yükü atmaktasınız. Burada sunucunuzun gücü CPU/RAM vb. konularda konuya dahil oluyor.
    İşleriniz büyüdükçe farklı sorunlar ortaya çıkacaktır.
    Yapmak istediğiniz şeyin performans mı yoksa maliyet mi sorusunu getirecektir.
    Bütün iş yükünü MySQL'e yüklemek ileride performans ve maliyet (ayrı bir makineye taşımak) sorunlarını da ortaya çıkaracaktır.

    Yapmanız gereken en mantıklı şey Mysql Partition ve Cache sistemler üzerine kafa yormanızdır.

    Deneyimlerime göre en ideal çözüm, (maliyet/performans/hız) açısından cache sistemlerle çalışmak olacaktır.
    Sadece insert, update ve zorunlu sorgu işlemleri dışında tamamını cache'ten yansıtmak bütün sorunların çözümü olacaktır.
    Neden sorusunun cevabını tam veremesem de, ne yapmanız gerektiği konusun da, cevabım net.

    diyelim ki mysql partition ve cache konusunda hem fikiriz.
    Biraz daha detaya girersek, cache sistemlerde wp eklentileri kullanıyorsanız sayfanın tamamını cache'ler.
    Bu seferde HDD (SSD) diskin hızlı olması ve yeterli alana sahip olmanız gerekir.
    ortalama bir sayfa 500kb yer tutar.

    Big data hesabı yapalım.
    500KB x 1.000.000 sayfa = 500.000.000 KB => 500GB yer tutacaktır.

    Ama Json cache ile sadece gerekli bilgileri tutarsanız ortalama 1/10KB arası yer tutar;
    10KB x 1.000.000 sayfa = 10.000.000 KB => 10GB yer tutacaktır.

    Belirtmeyi unutmuşum.
    Standart cache de dosya boyutu yüksek olacağı için okuma hızındada performans kaybı yaşarsınız.
    Json cache boyutu düşük olacağından daha hızlı olacaktır.
    Ayrıca sayfa güncellemesi gerekirse, her sayfanın tamanını güncelemektense, sadece ilgili verileri güncellemekte daha kolay olacaktır.

    Not.
    Sql sorgularınızı optimize ettikten sonra, partition, cache sistemlere kafa yorun.
    Cloud vds te 4.000.000 sayfa ve anlık binlerce kişiyi sayfa açılış hızını 0.005 ms hızlara ulaştırdığımı biliyorum.

    konu biraz farklı yöne kaysada, yapmak istediğiniz sonucun bu olduğunu düşünerek, yönlendirmek istedim.