[Linux-programlama] PHP - Optimizasyon

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Fatih Kaya (fkayaist@gmail.com)
Date: Thu 14 Dec 2006 - 22:03:42 GMT


Merhaba Sayın Grup Üyeleri,

 

PHP & MYSQL ile ilgili bir takım "temel" bilgilere ihtiyacım var. Konunun
uzman ve tecrübelilerinden değerli cevaplarını bekliyorum.

 

PHP & MYSQL gibi internet teknolojileriyle uğraşanların en önemli
sorunlarından birisi Optimizasyon olsa gerek. Optimizasyon derken, yazılan
kodlarla sağlanacak en yüksek performans ve hızı yakalamak ve bunu yaparken
sunucuya az yük yüklemekten bahsediyorum. Ben bundan önce bir takım basit
siteler geliştirdim PHP & MYSQL'le ancak şimdi büyük denilebilecek düzeyde,
oturum kontrolleri, dosya işlemleri, yoğun veritabanı sorguları olan ve
yüksek ziyaretçi alması beklenen birkaç projede çalışıyorum. Optimizasyonla
ilgili sorumu birkaç örnekle aktarayım:

 

Örneğin, farklı 6-7 tablodan verilerin alınıp gösterildiği bir anasayfa
düşünün. Bu sayfa doğal olarak 6-7 ayrı sorgu gerçekleştirecek. Bu durumda
MYSQL'e taraflı mı çalışılmalı yoksa PHP'ye mi yük bindirilmeli, ya da en
uygun performans..? Bundan kastım örneğin sayfanın solunda bir tablonun en
üstteki 2 satırdan alınan veriler gösterilecek. Bunu yaparken sql cümlesinde
MYSQL için LIMIT fonksiyonuyla sadece 2 adet satırı alabiliriz. Ya da
yıldızla (*) hepsini sorgulatıp PHP'de döngüyle sadece 2'sini gösteririz.
Hangisi tercih edilmeli ? Yani tabi bu bir örnek buna odaklanarak cevap
vermeye çalışmayın aklıma geleni yazıyorum. Diyelim sadece 3 sütundaki
bilgiler lazım o zaman sql e sadece o 3 satırın sütun adını mı yazmalı yoksa
yıldız (*) la alınıp istenilen sutunlar okutularak sayfaya yazdırılmalı ?
Yani işin özü, en yüksek performans ve sunucu yükü acısından minimum yük
için nasıl davranılmalı ? Tecrübelerinize göre hangi stilde kod geliştirmek
bizim işimize gelir. Kodları sonradan kullanmak..vb. sebepleri bir yana
bırakalım, sadece 1 websitesi için düşünelim. Örneğin birden fazla sorgu
gerektiren sayfalarda nasıl bir yok izlenmeli..? Konu daha iyi anlaşısın
diye bir örnek daha: Tarih işlemek MYSQL sorgusunda da, MYSQL den oldugu
gibi alınıp PHP koduyla da yapılabiliyor. Hangisi secilirse daha yuksek
performans olur ? Örneğin, fonksiyonlar yazıp bunların hepsini bir sayfaya
koyup sayfaya include ettiğimizde kullanmayacagımız fonksiyonlar cok az da
olsa artı bir yük olusturuyor mu? Bunun gibi ornekler cogaltılabilir.
Maddeler halinde en iyi PERFORMANS için programcının nasıl davranması
gerektiğini, tercihlerini hangi dogrultuda kullanması gerektiğini
yazabilirseniz, çom müteşekkir olacağım.

 

 

Herkese iyi çalışmalar,

 

Fatih.

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.