Portal de entretenimiento y tecnología

un excelente trabajo de facebook (HipHop for PHP)



publicado por: taoru
6/2/2010

Es mas que conocido que el gigante de las redes sociales trabaja
incansablemente para hacer escalar su aplicación (realizada en gran
parte con PHP y un core en C) para dar soporte a los millones de
usuarios que tiene reduciendo sus costes de Hardware y Conectividad.
Desde hace un par de meses atrás vengo leyendo que facebook se traía
algo entre manos con PHP pero nadie sabía que estaba haciendo, se
hablaba de un compilador y de una reescritura completa del interprete
de PHP, si lo piensan en frío se darán cuenta de la locura que puede
ser hacer esto.

Ayer leyendo Viva PHP me entero que el equipo del core de PHP fue
invitado a las oficinas de Facebook para que estos les muestren en lo
que estaban trabajando y que el martes sería la presentación general
de este trabajo, bueno estamos a martes y salio a la luz para revolver
la comunidad PHP como nunca antes lo había visto.

Los locos de Facebook se mandaron un producto llamado HipHop, este es
un traductor de lenguaje, si si lo dije bien, no es un compilador ni
un interprete, es un traductor, algo no muy extraño en el mundo del
desarrollo pero poco visto últimamente. La idea es traducir el código
PHP (lenguaje de scripting, dinámico y debilmente tipado) a código C++
(lenguaje compilado, estático y fuertemente tipado). Esto obviamente
hará ganar al nuestros servers muchisimo tiempo de procesamiento dado
que evitaremos la interpretación por cada ejecución de los scripts PHP
y permite que un lenguaje tan sencillo y hermoso como PHP sea
convertido a un código tan óptimo como el de C++. Según las
estimaciones de la gente de Facebook la ganancia en sus servers es de
un 50% de CPU, lo que me parece muy probable y una guarangada.

La idea es desarrollar la solución con PHP y una ves terminada
traducirla y compilarla con g++, dicho producto compilado tendría
empotrado su propio web server por lo que no necesitariamos mas de
Apache (al menos para servir las paginas). Esta alternativa compitiría
directamente con soluciones como APC y PHC.

Aparentemente también existe otro producto llamado HPHPI que haría
algo similar pero sin tener que realizar el proceso de compilación.

Que es lo malo de todo esto, por que no todo es color de rosas,
aparentemente ciertas funcionalidad de PHP serían sacrificadas por la
imposibilidad de ser convertidas, no esta muy claro cuales son dichas
funcionalidades pero la mas nombrada es la función eval, lo que para
los sysadmins no sería algo critico dado que es una función sumamente
insegúra y una de las que mas recursos consume en los servidores, pero
muy utilizadas por productos muy conocidos como Joomla y otros.

Es muy interesante ver este tipo de soluciones que atacan a una de las
problemáticas y criticas fundamentales de PHP, la escalabilidad. Para
la mayoría de los desarrollos que realizan los programadores PHP
normales (pequeños y medianos sitios) esto no será un hecho relevante,
pero para los grandes sitios será algo mas que provechoso dado que con
la incorporación de dicho producto podrán ganar altos grados de
procesamientos en sus datacenter actuales.

noticia anterior
 


Si quieres ofrecer un link a esta noticia en tu página, linkea esta URL:
http://www.jimobi.net/noticias/178/un_excelente_trabajo_de_facebook_%28hiphop_for_php%29