Tue, Oct
0 New Articles

HipHop from Facebook May Solidify PHP's Leadership Position for Web Development

Analysis of News Events
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

The newly released open-source code transformer converts PHP to C++ and makes large, complex PHP Web sites run much faster.


If ever there were an example of an enterprise-level PHP application, Facebook is it. The social networking super-site serves more than 400 billion PHP-based page views per month, proving beyond question that PHP is suitable for scaling large Web applications—or does it?


Ironically, it may have been around the 300-billion-page-view mark that Facebook developers finally cried uncle. PHP—a scripting language—just couldn't keep up with all the traffic. Well, it could with enough hardware behind it, but scaling Facebook was becoming a challenging undertaking by any account.


Essentially, every page view represented a logged-in user with a custom experience. What is happening in the background when a user views his home page is this: the application looks up all of the person's friends, queries relevant updates, filters results based on privacy settings, and finally completes the user's stories with comments and photos. Facebook does this all in less than a second. This doesn't even take into account other core parts of the site involving the news feed, search engine, chat feature, and other goodies.


Someone out there probably is reading this and thinking, "I bet they were sorry they ever started down the road with PHP! They should have picked a traditional compiled language or at least an interpreted language—not a scripting language."


Actually, Facebook management is not sorry it developed its site with PHP. The simple-to-learn language has given them something that has been a key to their success: speed. A Facebook senior engineer, Haiping Zhao, writing in a company blog, describes how for the past six years PHP has allowed Facebook developers to do far more than they could have accomplished otherwise, thanks to PHP's support of rapid application development. Using PHP has created an environment in which new engineers at the company can ramp up far faster than they could have using a more traditional language. PHP has given Facebook an edge on innovation.


Nevertheless, with 400 billion page views per month, PHP was starting to wheeze. Even on smaller sites, finding new ways to improve PHP performance has been the equivalent of searching for the Holy Grail. It certainly has been job one at Zend Technologies. At runtime, Zend Engine turns PHP source code into opcodes that are then put through the Zend Virtual Machine. Many PHP Web sites use accelerators that cache this output, and Zend Server makes PHP run faster through opcode optimization and caching. Zend Core, which allows PHP to run native on IBM i, fulfills this role.


But Facebook was past the point where such measures would result in significant acceleration. The company started looking at actually compiling PHP source into another language so it could be turned into native machine code. As it turns out, compiling PHP isn't really a new idea. Several open-source projects—such as Roadsend and phc—compile PHP into C, while Quercus compiles PHP into Java—go figure. Phalanger compiles PHP to .NET.


Facebook decided to transform PHP into C++, but to do that, the company had to put on its thinking cap (drum roll, please). Two years later, the result achieved by of some very bright and very determined developers is what is now being called HipHop for PHP. Facebook developers wrote over 300,000 lines of code and did 5,000 unit tests. It took a few years, but today, Facebook is serving more than more than 90 percent of its Web traffic using HipHop. As a result, CPU usage on Facebook servers has dropped by an average of 50 percent, thanks to HipHop.


The company was so pleased with the results it achieved from HiipHop that it decided the Web community at large should benefit. Last month, it released HipHop as open source in the hope of reinforcing the idea that PHP is a great language to build large complex scalable Web sites.


What is HipHop, and how does it work? HipHop apparently is not actually a compiler but a source code transformer. It programmatically transforms PHP source into highly optimized C++. Then, it uses g++ to compile it. HipHop includes a code transformer, a reimplementation of PHP's runtime system, and a rewrite of many common PHP extensions. HipHop also includes a new Web server that is said to simplify Apache Web server and thus help increase performance. The main PHP 5.2 language remains essentially the same, save for a few missing features that Facebook says are rarely used.


Since HipHop allows for the scaling of very large Web sites, it probably won't find much traction in the average SMB Web site. It may be more of an academic novelty than a practical tool that forever changes the face of PHP development. However, it most certainly will change the debate about PHP that today seems to run endlessly in circles: is it or isn't it suitable for large enterprise Web sites? It seems those for it have it locked. Facebook, however, says HipHop is still in beta and will require more work, presumably from them or others in the PHP community. Developers at Zend Technologies currently are evaluating HipHop to see how its technology can be best adapted to the business and developer communities.


Meanwhile, Zend has released the results of a worldwide survey that suggests many more developers soon will acquire Zend Framework certification. Today, only about 5 percent of PHP developers are certified in Zend Framework despite the fact that 70 percent of PHP developers use it for business-critical applications. Parenthetically, some 85 percent have chosen Linux as their primary operating system for PHP applications.


Regardless of where PHP heads this year, it's clear the demand for online training and certification will go nowhere but up, and that is good news for Zend.


Facebook says that HipHop will be available for download through github.com.

Chris Smith

Chris Smith was the Senior News Editor at MC Press Online from 2007 to 2012 and was responsible for the news content on the company's Web site. Chris has been writing about the IBM midrange industry since 1992 when he signed on with Duke Communications as West Coast Editor of News 3X/400. With a bachelor's from the University of California at Berkeley, where he majored in English and minored in Journalism, and a master's in Journalism from the University of Colorado, Boulder, Chris later studied computer programming and AS/400 operations at Long Beach City College. An award-winning writer with two Maggie Awards, four business books, and a collection of poetry to his credit, Chris began his newspaper career as a reporter in northern California, later worked as night city editor for the Rocky Mountain News in Denver, and went on to edit a national cable television trade magazine. He was Communications Manager for McDonnell Douglas Corp. in Long Beach, Calif., before it merged with Boeing, and oversaw implementation of the company's first IBM desktop publishing system there. An editor for MC Press Online since 2007, Chris has authored some 300 articles on a broad range of topics surrounding the IBM midrange platform that have appeared in the company's eight industry-leading newsletters. He can be reached at This email address is being protected from spambots. You need JavaScript enabled to view it..



Support MC Press Online

$0.00 Raised:

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: