Earlier this morning, Facebook officially made their new PHP “compiler,” called HipHop, available as open source software. In the blog post by Haiping Zhao, HipHop for PHP is described as a “source code transformer” which has allowed Facebook to nearly double their PHP operating speeds, at the cost of minor omissions such rarely used functions in the PHP language. For a site which serves nearly 400 billion PHP-based page views every month, that is an incredible performance boost. According to the article, Facebook is now serving over 90% of their traffic using HipHop.
Essentially, HipHop for PHP gains its performance increase by transforming the scripted PHP language into the compiled C++ language. Scripted languages typically have the advantage of being simple to learn, code, and debug while sacrificing speed. Compiled languages on the other hand have a steeper learning curve and are more strict; however, are considerably faster and better optimized to handle memory. Facebook seems to have found a balance between both worlds with HipHop for PHP.
HipHop for PHP was accurately described in an old anonymous interview with a Facebook employee. Many of the details match up with information published in this morning’s blog post.
If you would like to learn for about HipHop, Facebook will be streaming a live tech talk regarding HipHop for PHP this evening at 7:30PM Pacific. You can watch live coverage of the event here. There is also a developer mailing list to which you can subscribe, and a HipHop wiki (the link has not yet been posted). All of the above details and more can also be found on the developer blog.