HipHop for PHP
Facebook, Inc. | |
---|---|
Initial release | February 2, 2010[1] |
Final release | / 2013 |
Repository | |
Written in | C++, C, PHP |
Successor | HHVM |
License | PHP License |
Website | github |
HipHop for PHP (HPHPc) is a discontinued
The original motivation behind HipHop was to save resources on Facebook servers, given the large PHP codebase of facebook.com. As the development of HipHop progressed, it was realised that HipHop could substantially increase the speed of PHP applications in general. Increases in web page generation throughput by factors of up to six have been observed over the Zend PHP.[4][5][6][7][8] A stated goal of HPHPc was to provide a high level of compatibility for Zend PHP, where most Zend-based PHP programs run unmodified on HPHPc.[6] HPHPc was originally open sourced in early 2010.[1]
As an addition to HPHPc, Facebook engineers also created a "developer mode" of HipHop (interpreted version of a PHP execution engine, known as HPHPi) and the HipHop
By many accounts HPHPc fulfilled its goals, especially within Facebook as it allowed facebook.com to run much faster while using fewer resources. However, in early 2013 Facebook deprecated HPHPc in favor of the
create_function()
and eval()
constructs, and it involved a specific time- and resource-consuming deployment process that required a bigger than 1 GB binary to be compiled and distributed to many servers in short order. In addition, maintaining HPHPc and HPHPi in parallel (as they needed to be, for the consistency of production and development environments) was becoming cumbersome. Finally, HPHPc was not a drop-in replacement for Zend, requiring external customers to change their whole development and deployment processes to use HPHPc.[2]See also
References
- ^ a b c Haiping Zhao (2010-02-02). "HipHop for PHP: Move Fast". Facebook. Retrieved 2014-08-02.
- ^ a b c Drew Paroski (2012-11-29). "Speeding up PHP-based development with HHVM". Facebook. Retrieved 2014-08-02.
- ^ Paul Tarjan (2013-05-13). "Joining, Retirement, Testing, and Bankruptcy". hhvm.com. Retrieved 2014-08-02.
- ^ "OOPSLA '12 Paper". Retrieved 2013-05-23.
- ^ Guilherme Ottoni (2013-03-12). "The HipHop Compiler for PHP". OOPSLA 2012. Retrieved 2013-05-23.
- ^ a b "FOSDEM 2013 Interview". Retrieved 2013-05-23.
- ^ "HipHop for PHP: Benchmark". Archived from the original on 2011-05-16. Retrieved 2013-05-23.
- ^ "Drupal 7: HipHop for PHP vs APC – benchmark". Archived from the original on 2011-05-19. Retrieved 2013-05-23.
- ^ "Announcement on GitHub removing HPHPc support". github.com. Facebook. 2013-02-19. Retrieved 2013-05-24.
External links
- HipHop Compiler for PHP? Transforming PHP into C++ on YouTube, by Haiping Zhao
- The HipHop Compiler for PHP, OOPSLA 2012, by Guilherme Ottoni et al.
- Scaling with HipHop on YouTube, PHP UK Conference 2013, by Sara Goleman