Daha fazla PHP performansını artırmak için nasıl?

4 Cevap php

Ben Facebook için PHP uygulama oluşturduk. Bu MySQL, Memcached kullanır ve Centos 2,6 Ghz ve 2 GB RAM Lighttpd çalışır.

Bu temelde bir PHP dosyası olduğunu ilk çalıştırma önbelleğe alınır ve doğrudan Memcached 0,8 ms sonraki her zaman servis ediyor sonra.

Bu zamanı kısaltmak için daha fazla ne yapabilirim?

4 Cevap

Eğer 0.8 ms için olsun, ben herhangi bir düşük gidebilir emin değilim.

Ancak, (bir ortak memcached), çok sayıda eşzamanlı istekleri işlemek için birden çok sunucu kurabilirsiniz. Daha sonra sınırlarına ulaştığınızda sadece yeni bir sunucu ekleyerek çok yüksek ölçekli mümkün olacak.

XDebug çalıştırın ve profiler çalıştırın. Eğer uzun bir anormal uzunluğu alır herhangi bir fonksiyonu varsa orada görebilirsiniz.

Ben o günlükleri okuyan bir program kullanmanızı öneririz. KCacheGrind vb gibi

Eğer profiler ülkeye girerken MEZUNLARI, artık geri dönüş yok.

Birden çok sunucu için bir http-proxy ve yük dengesini koyabilirsiniz. Çoğu http-vekiller uygulamayı kapalı yük alabilir, bir önbellek olarak iki katına çıkarabilir.

Sayfalarınız istemci tarafı önbelleklenebilecek böylece Ayrıca, size uygun http başlıklarını göndermek emin olun. Müşterilerin önbelleğe alınmış sürümünü yeniden olacak gibi bu isteklerinin sayısını azaltabilir.

Eğer memcached verileri alır ve bunları görüntüler veya web sunucusu kendisi doğrudan memcached gelen verileri alır bir php komut dosyası var mı?

LightHTTPD memcached doğrudan sayfa görüntülemek eğer ben bilmiyorum, ama ben nginx ngx_http_memcached_module için bu google yapabilirsiniz biliyorum