Gökhan Özden Günlük/Blog

6 Ağustos 2007

PHP Performans Teknikleri-1

Kategori: PHP, Teknik, memcached — gokhanozden @ 12:35 pm

PHP de performansı arttırabilmek için çeşitli yöntemler var. Bunlardan bazıları

  1. İşlem yapan bir algoritma çalışıyor ise daha iyisini geliştirmek
  2. Zend Platform gibi özellikle Windows Serverlarda 4 kata varan hız iddia eden platformaları kullanmak
  3. Yeni öğrendiğim ancak sanırım eski bir teknik olan “memcached” gibi önbellek yöntemleri ile çekilen sorguları önbelleğe aktarmak ve böylece önbelleğe aktarılmış verileri daha da hızlı bir şekilde almak.

3. yöntem hakkında biraz duracağım çünkü bu konu önemli önbelleğe alma yöntemleri birçok yerde kullanılmakta ve bunlardan bazıları

  • Wikipedia
  • Sourceforge
  • Digg

gibi yüklü ve fazlasıyla ziyaretçisi olan sitelerde PHPnin gücünü katlamakta. Kısa bir kod örneği vermek gerekirse

Bu düz bir sorgu olsun

function get_foo (int userid) {
result = db_select(“SELECT * FROM users WHERE userid = ?”, userid);
return result;
}

Bu ise memcached ile yapılmış bir sorgu örneği:

function get_foo (int userid) {
result = memcached_fetch(“userrow:” + userid);
if (!result) {
result = db_select(“SELECT * FROM users WHERE userid = ?”, userid);
memcached_add(“userrow:” + userid, result);
}
return result;
}

Üst tarafta önbellekte olup olmadığına bakıp eğer yoksa db den almaya çalışıyor. Kullanımı bu şekilde basit olmakla birlikte bir çok alana genişletmek mümkün.

Detaylı Bilgi İçin:

Wikipedia
PHP.net
Danga.com

WordPress.com'dan blog alın.