Uygulamanızın performansını etkileyebilir birçok değişken vardır. Ben anında PHP sorun olduğunu düşünmeyin öneririz.
İlk olarak, nasıl PHP hizmet vermekteyiz? Apache veya IIS kendisi temel optimizasyonu denediniz mi? Sunucu isteklerini diğer türlü işlem meşgul? Bir PHP code accelerator yararlanmaktadır? Sunucu tıkanıklık olup olmadığını test etmek için tek yolu, başka bir sunucu üzerinde uygulama çalıştıran çalışmaktır.
İkincisi, tüm uygulama performansı yavaş, ya da sadece belirli sayfaları etkileyecek gibi görünüyor? Bu size performans analiz başlamak için nerede bir göstergesi verebilir. Tüm uygulama yavaş ise, sorunun temel sunucu / platform veya (örneğin kullanıcı kimlik doğrulama,) her istek parçası olan küresel bir SQL sorgusu ile daha olasıdır.
Üçüncü olarak, SQL sorguları sayısını en aza indirerek söz, ama ne varolan sorguları optimize hakkında? Eğer MySQL kullanıyorsanız, her bir depolama sisteminin çeşitli güçlerinden yararlanarak? Eğer düzgün endeksli olduğundan emin olmak için en önemli sorguları EXPLAIN çalıştırmak? Bu büyük tablolar erişmek sorgularında önemlidir; veri kümesi büyük, daha fakir indeksleme etkilerini göreceksiniz. Neyse ki, EXPLAIN nasıl kullanılacağını açıklamak çok sayıda makale such as this one vardır.
Dördüncü, ortak bir hata veritabanı sunucusu otomatik olarak sisteme mevcut tüm kaynakların kullanmak farz etmektir. Eğer açıkça veritabanı uygulaması için yeterli kaynak tahsis emin olmak için kontrol etmelisiniz. MySQL, örneğin, vb anahtar tampon, geçici bir tablo boyutu, iplik eşzamanlılık, innodb tampon havuzu boyutu gibi şeyler için (sizin my.cnf dosyası) özel ayarları eklemek isteyeceksiniz
Eğer yukarıdaki çift-kontrol, tüm ettik ve hala darboğaz bulmak için yapamıyorsanız, Xdebug gibi bir kod profiler kesinlikle yardımcı olabilir. Şahsen ben Zend Studio profilcisini tercih, ama zaten Zend Platform yığının kalanı yararlanarak sürece en iyi seçenek olmayabilir. Ancak, benim deneyim PHP kendini yavaş performans kök nedeni olduğunu çok nadirdir. Genellikle, bir kod profiler DB sorguları suçlu daha hassas belirlemenize yardımcı olabilir.