Emrah TOY

Tarih : 03-02-2010
Kategori : Yazılım

2

Yorum

Geçtiğimiz günlerde bir kaç blog yazısında haberini okuduğum Hyper-PHP yada HPHP adıyla anılan ve tam olarak ne olduğu anlaşılamayan bir PHP versiyonundan bahsediliyordu.

Bir çeşit OpCode Cache mi yoksa Java vâri bir Virtual Machine mi söz konusu olan netleşmemişti. Bugün ise okuduğum başka bir blogda  yayınlanan girdiyi görünce durumun netleştiğini gördüm.

Üretilen şey bir PHP compiler’ı ancak tek başına bir compiler değil. Daha çok bir kod yorumlayıcı ve yeniden yaratıcı ( reimplementation ) ve Php Runtime ın yerini yeni bir Php Runtime olarak algılamak gerek. Bunu çalışma şeklinden de anlamak mümkün, şu şekilde çalışıyor ;

Vermiş olduğunuz PHP betiğini önce C++ olarak çeviriyor sonrasında ise G++ ile compile ediliyor. Yani arada derede bir yapı ancak başarı oranına bakıldığında CPU üzerinde %50 oranında yük azalması söz konusu. Kısacası başarılı !

Hiphop Php Transformation Process

Hiphop Php Transformation Process

Son iki yıldır geliştirilmekde olan proje ilk kez bu gün geliştiricilere ve meraklılarına sunuldu.  ( HipHop for php from Facebook )

Aynı yöntemle facebook servislerinde %30’a varan hız sağlanmış ki düşünülecek olursa o yoğunlukdaki bir hizmet için oldukça verimli bir oran.

Dezavantajlarıda var elbette çok nadirde olsa kimi fonksiyonların desteklenmediğini ancak karşılığında yüksek oranda performans verildiğini görebiliyoruz, bir bölüm yazılımcının işine gelmeyecek olan en önemli fonksiyon ise ‘eval()’ fonksiyonu sanıyorum.

Hiphop for Php olarak anılan ancak daha önceleri Hyper-PHP olarak anılmış olan bu ortam şunları içermekte;

  1. Kod çevirici ( Code Transformer )
  2. Yeniden gerçeklenmiş Php Runtime ( Reimplementation of Php Runtime )
  3. Genel geçerk pek çok Php eklentisinin yeniden yazılmış yada yapılandırılmış hali ( Rewrited Php Extensions )

Kaynaklar ;


Bu blogu sevdinse yazacağım diğer yazıları kaçırmamak için RSS aboneliği yapabilir yada Twitter üzerinden takip edebilirsin. Yazılarımı facebook’da paylaşabilir ve arkadaşlarına önerebilirsin.

Comments Closed

Dediler ki;

hocam aydınlatıcı bir makale olmuş teşekkürler 🙂 . anlamadığım nokta ise kodun her seferinde derlenip derlenmediği… yani yukardaki şekilde gösterilen işlem her sayfa isteği için gerçekleşiyorsa yük artabilir 🙁 . ama derlenen kod cacheleniyorsa oldukça verimli.

roser137

Sende de ki;