Gigantul Facebook a mai facut un pas in a face limbajul de programare web PHP sa ruleze mai repede. Compania a dezvoltat un asa zis PHP Virtual Machine, despre care se spune ca poate rula limbajul de programare de 9 ori mai rapid decat ar fi fost rulat de pe sisteme native PHP.
“Scopul nostru este sa facem PHP sa ruleze extrem de repede”, a declarat Joel Pobar, manager in cadrul companiei Facebook. Facebook utilizeaza aceasta masina virtuala, numita HipHop Virtual Machine (HHVM) pe toate serverele sale, inca de la inceputul acestui an.
HHVM nu este prima incursiune a companiei Facebook in personalizarea PHP pentru o utilizare mai rapida. PHP este un limbaj interpretat, ceea ce inseamna ca codul sursa este executat direct de catre procesor. In general, programele scrise in limbaje interpretate, cum ar fi PHP, tind sa nu ruleze la fel de repede ca limbaje precum C sau C++, care au fost compilate in prealabil. Facebook a ramas fidel lui PHP deoarece acesta este inteles de catre multi dintre programatorii web care lucreaza pentru companie.
Cu toate acestea, pentru a putea tine pasul cu cererea insatiabila a utilizatorilor, Facebook a conceput initial un compilator, numit HipHop, care ar traduce cod PHP in C++, asa ca acesta ar putea fi compilat inainte pentru a obtine performante mai bune.
Chiar daca timp de mai multi ani Facebook s-a bucurat de imbunatatiri considerabile de performanta cu aceasta prima versiune a HipHop, compania a cautat si alte modalitati de a accelera livrarea de pagini web dinamice catre cei 1 miliard de utilizatori ai sai.
Astfel, HHVM este urmatorul pas pentru Facebook, fiind in curs de dezvoltare de aproximativ 3 ani. HHVM functioneaza pe acelasi principiu ca si Java Virtual Machine (JVM), avand incorporat un compilator just-in-time (JIT) care converteste codul sursa citit de catre un utilizator in cod sursa care poate fi citit de catre o masina virtuala, atunci cand acest lucru este necesar.
HHVM este optimizat pentru a manipula cantitati foarte mari si foarte folosite de cod PHP. Pobar estimeaza ca utilizarea HHVM pentru site-uri de dimensiuni standard, cum ar fi cele pe WordPress hosting, ar insemna o imbunatatire a performantei acestora de aproximativ 5 ori.