Bu başlık altında herkes buna benzer optimizasyonlarını paylaşırsa cok yararlı olacaktır hepimiz icin.

Ben bir alıntı ile başlıyorum.

MySQL sorguları sağdan sola işlendiği icin ozel secimlerinizi (primary key gibi) en sağa yazın.
Tum alanları secmek yerine (SELECT *) yalnızca kullanacağınız sutunları secin (SELECT a, b, c).
Cok nadir değişen bilgileri veritabanına koymak yerine bir dosyaya yazın.
Secmek ve sıralamak istediğiniz (WHERE ve ORDER BY) alanlar icin index kullanın.
Index‘ler aramalarınızı cok hızlandırır, ancak yeni kayıt girişini yavaşlatır (insertion).
Index ’lerinizi analiz etmek icin EXPLAIN komutunu kullanın.
Yaptığınız aramada yalnızca 1 girdiye ihtiyacınız varsa her zaman LIMIT 1 kullanmalısınız. Boylece MySQL istediğiniz girdiyi bulduğu anda aramayı durdurur.
Eğer sonuclarınızı

$girdi = mysql_fetch_array($sorgu)

şeklinde alıyorsanız verilere iki şekilde ulaşabilirsiniz: $girdi[0] ve $girdi['sutunismi']. Sutun numarasıyla verilerinize ulaşmıyorsanız ekstradan boşu boşuna bir $girdi[int i] array ’i oluşturuyorsunuz demektir. Sadece $girdi['sutunismi'] şeklinde verilerinize ulaşıyorsanız

$girdi = mysql_fetch_assoc($sorgu)

kullanın.

Bazen mysql_free_result() kazandırdığından fazla bellek kullanın. Farkı memory_get_usage() ile kontrol edin.
Veritabanından surekli aynı bilgileri istemeyin, gerekiyorsa sonucu değişkenlere kaydedin.
Verilerinizi olabildiğince NOT lisanssız tanımlayın. Hem her veri başına 1 bit kazanacak, hem de işleminiz hızlanacaktır.
Verinize uygun turu secin. Ornek olarak INT unsigned olarak 4294967295′e kadar sayıları tutar, ki bu coğu zaman cok buyuktur. Uygunsa MEDIUMINT veya SMALLINT kullanın.
Tabloya veri eklerken ontanımlı değerleri kullanın, yalnızca ontanımlıdan farklı değerleri belirtin.
PHP
Bircok blok kullanmak uygulamanızı yavaşlatır.

Hızlı:
< ?
...
...
...
?>

Yavaş
< ? ... ?>
< ? ... ?>
< ? ... ?>

(1) şeklinde bir kod genelde (2) ’den hızlı calışır.

Gerekmediğinde string birleştirmeyi (concatenation) kullanmayın.

Hızlı:
“SELECT id FROM tabell WHERE id = $_SESSION[id] LIMIT 1″

Yavaş
“SELECT id FROM tabell WHERE id = “.$_SESSION[ ’id ’].” LIMIT 1″

String ’lerinizi cift tırnak (”) yerine tek tırnakla ( ’) acıp kapatmanız uygulamayı biraz hızlandırabilir. Php “…” icindeki değişkenlere bakarken ‘… ’ icindeki değişkenleri onemsemez. Tabii ki bunu string icerisine değişken yazmak istemediğinizde kullanmalısınız.
String ’leri ve değişkenleri echo ile bastırken nokta (.) yerine virgul (,) kullanmak daha hızlıdır. Ornek:

echo “bir degisken” , $degisken, “yaziyor…”;

Not: Bu yalnızca birden fazla string parametresi alabilen echo fonksiyonu icin gecerlidir.

echo, print‘ten hızlıdır.
for donguleriniz icin ust limiti donguden once bir değişkene atıp kullanmak her turda bu sayının tekrar tekrar hesaplanmasını engeller:

Hızlı:
$maxvalue = 100/10;
for($i=0; $i