• 09-07-2008, 09:55:35
    #1
    Üyeliği durduruldu
    Php de bir sorgunun hızlı olması nasıl sağlanır.

    benim bildiğim şeyler,

    1. SELECT * FROM tablo yerine SELECT alanadi FROM tablo kullanmak.
    2.WHERE deyiminden sonraki kısmı doğru tanımlamak.
  • 09-07-2008, 13:39:25
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    gereksiz alan çekiminden kaçınmak ki bunu belirtmişsiniz. Ayrıyeten büyük hitli sitelerde ise Stored Procedure ve Trigger kullanmak size baya bir hız kazandıracaktır.
  • 09-07-2008, 18:12:02
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    sorguları daraltmak performans için etkili olur

    mysqli_stmt fonksiyonlarını araştır
  • 10-07-2008, 17:24:30
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Ornek

    Adi, Soyadi, Maas, Sehir seklindeki bir tabloda 1000 kayit varsa
    bunlardan 20 tanesinde sehir istanbul ve 300 tanesinde de maas 500 liraysa
    istanbul ilinden olan ve 500 lira maas alan kayitlari listelemek icin

    where maas='500' and sehir='istanbul'

    yerine

    where sehir='istanbul' and maas='500' yapmak daha hizlidir

    cunku sehir kisitlamasinin sonucunda 20 kayit kalmaktadir ondan sonra bu 20 kayitta arama yapilacaktir. Ama 1. yontemde 500 kayitta arama yapilacaktir.
    Bu da sorgu performansini dusurur. Eszamanli sorgu sayisi artmadan farkedilmez ama eszamanli sorgu sayisi artinca milisaniyelik farklar saniyelere donusmeye baslar...
  • 10-07-2008, 18:12:07
    #5
    select * yapma select id,uyeadi falan ne gerekiyorsa sadece onları çek
  • 10-07-2008, 18:19:19
    #6
    hidonet + fatal ikiside Dogru Konulara Deginmisler.ayrica xfreexx hocamin dediginide arastiriniz
  • 10-07-2008, 20:00:55
    #7
    Üyeliği durduruldu
    hidonet adlı üyeden alıntı: mesajı görüntüle
    Ornek
    Adi, Soyadi, Maas, Sehir seklindeki bir tabloda 1000 kayit varsa
    bunlardan 20 tanesinde sehir istanbul ve 300 tanesinde de maas 500 liraysa
    istanbul ilinden olan ve 500 lira maas alan kayitlari listelemek icin
    where maas='500' and sehir='istanbul'
    yerine
    where sehir='istanbul' and maas='500' yapmak daha hizlidir
    cunku sehir kisitlamasinin sonucunda 20 kayit kalmaktadir ondan sonra bu 20 kayitta arama yapilacaktir. Ama 1. yontemde 500 kayitta arama yapilacaktir.
    Bu da sorgu performansini dusurur. Eszamanli sorgu sayisi artmadan farkedilmez ama eszamanli sorgu sayisi artinca milisaniyelik farklar saniyelere donusmeye baslar...
    Çok mantıklı
  • 12-07-2008, 18:27:24
    #8
    Üyeliği durduruldu
    $oyle bi durum daha var..

    Eger yapilacak is belli bi limitin ustundeyse, yani buyuk bi site gelistiriyosaniz, alternatif sistemlere bakmak zorundasiniz. Yani load balancing, replication, gibi seyler...

    Mysql gelistiricilerinin soledii onemli bi konu daha var

    - Mysql is not a calculator

    Mysql bir hesap makinasi degildir. Abuk subuk islerinizi mysql e yaptirmayin...

    zaten, buyuk islerde 1 bayt in bile hesabini yapmazsaniz, yazdiginiz her satirin neye malolacagini hesaplamazsaniz cuvallarsiniz. Fazladan yazacaginiz 10 byte, gunde 1 milyon gosterim yapan bi sayfada 10 milyon bayt = 10 Mbayt edecektir. Bazi yukleri MYSQL den almak da yapilabilecek isler arasinda. Mesela web caching yapmak sitedeki sık guncellenmeyen bir cok bolgenin her ziyaretci icin mysql den yeniden cekilmesine gerek birakmadigi icin cok rahatlaticidir.

    Velhasil-i kelam : Sunucunuza bo$ hamallik yaptirmayin
  • 13-07-2008, 00:07:05
    #9
    "Php Sorgu Hızı Nasıl Sağlanır?"
    Sorguyu yapan php değil ki MySql'in performansına php'ni bir etkisi olmaz. Başlığı database bölümüne açsaydın daha iyi olurmuş