HipHop for PHP

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
HipHop for PHP
github.com/facebook/hiphop-php
HipHop for PHP Logo, White on Blue.png
Información general
Modelo de desarrollo Código abierto
Desarrollador(es) Facebook
Género Sistema en tiempo de ejecución, traductor y aplicación informática
Programado en C++ y C
Licencia Licencia PHP
[editar datos en Wikidata]

HipHop for PHP (HPHPc) es un transcompilador PHP discontinuado creado por Facebook. Mediante la utilización de HPHPc,el código PHP es traducido a código C++, y compilado como ejecutable, opuesto a la usal ejecución de PHP, donde el código es transformado en opcode e interpretado. HPHPc consiste mayormente en C++, C y código fuente PHP, el cual es distribuido bajo la Licencia PHP.

Las motivaciones originales detrás de HipHop fue salvar recursos en los servidores de Facebook, dada la extensa cantidad de código que mueve a facebook.com. A medida que el desarrollo de HipHop progresaba, se determinó que este podía incrementar sustancialmente el rendimiento de las aplicaciones PHP en general; se ha observado un rendimiento en la generación de páginas web hasta seis veces superior comparado con el Motor Zend de PHP.[1][2][3][4][5]​ Uno de los objetivos de HPHPc fue proveer alta compatibilidad para el motor Zend, donde la mayoría de los programas basados en PHP-Zend puedan ejecutarse sin modificaciones.[3]​ HPHPc was originally open sourced in early 2010.

Como agregados a HPHPc, los ingenieros de Facebook también crearon un "modo desarrollador" de HipHop (una versión interpretada del motor de ejecución de PHP, conocido como HPHPi), y el Depurador HipHop (conocido como HPHPd). Estos agregados permitían a los desarrolladores correr código PHP a través de la misma lógica provista por HPHPc mientras permitía depurar el código PHP intecactivamente definiendo inspectores de código, interruptores de ejecución, etc. La ejecución de código a través de HPHPi muestra menor rendimiento comparado con HPHPc, pero beneficia a los desarrolladores de tener ambos motores en funcionamiento, uno para desarrollo y el otro en producción. HPHPi y HPHPd se publicaron como código abierto en 2010.

HPHPc cumplió cabalmente sus metas, especialmente en conjunto con Facebook permitiendo que facebook.com corriera mucho más rápido y utilizando menos recursos. Sin embargo, en 2013, Facebook dejó HPHPc obsoleto en favor de su nuevo producto, HipHop Virtual Machine (HHVM), el cual es un compilador basado en just-in-time (JIT) de PHP, también desarrollado por Facebook.[6]​ Hay varias razones para esto; una de ellas es que la curvatura de mejoras de rendimiento de HPHPc fue decayendo. Además, HPHPc no tenía soporte completo para PHP, incluyendo los constructores create_function() y eval(), e implicaba gran consumo de tiempo y recursos requeridos para generar binarios compilados de más de 1 GB, los cuales debían ser distribuidos entre los servidores de Facebook en corto tiempo. Adicionalmente, mantener código HPHPc y HPHPi en paralelo (necesario para mantener la consistencia entre los entornos de desarrollo y producción) se volvió engorroso. Finalmente, HPHPc no fue un reemplazo directo del motor Zend, requiriendo que los consumidores cambiasen los procesos de desarrollo y despliegue.

Referencias[editar]

  1. «OOPSLA '12 Paper». Consultado el 23 de mayo de 2013. 
  2. Guilherme Ottoni (12 de marzo de 2013). «The HipHop Compiler for PHP». OOPSLA 2012. Consultado el 23 de mayo de 2013. 
  3. a b «FOSDEM 2013 Interview». Consultado el 23 de mayo de 2013. 
  4. «HipHop for PHP: Benchmark». Consultado el 23 de mayo de 2013. 
  5. «Drupal 7: HipHop for PHP vs APC – benchmark». Consultado el 23 de mayo de 2013. 
  6. «Announcement on GitHub removing HPHPc support». github.com. Facebook. 19 de febrero de 2013. Consultado el 24 de mayo de 2013. 

Véase también[editar]

Enlaces externos[editar]