写真●HipHop for PHPのロゴ
写真●HipHop for PHPのロゴ
[画像のクリックで拡大表示]

 米Facebookは米国時間2010年2月2日、Web開発スクリプト言語PHPで書かれたコードをC++コードに変換するツール「HipHop for PHP」(ベータ版)を、オープンソース・ソフトウエア(OSS)として公開した(写真)。WebページのPHP部分をC++言語経由でバイナリ化することで、処理の高速化やサーバーの負荷軽減につながるとしている。

 HipHopで生成したC++コードは、オープンソース・コンパイラg++(GNU C++コンパイラ)でバイナリ・コード化する。Facebookがテストしたところ、最終的なバイナリ・コードは変換前のPHPコードに比べWebサーバーのプロセサ使用量がほぼ半減した。SNS(Social Networking Service)「Facebook」のAPI層においては、30%少ないプロセサ使用量で2倍のトラフィックを処理できたという。こうした効果により、サーバー数の削減やデータセンターの発熱低減が見込める。

 HipHopは変換時にPHPコードを解釈し、使用頻度の低い「eval()」といった処理を犠牲にして全体的な最適化を図る。またPHPランタイム・システムの改良やPHPエクステンションの変更も行った。

 現在FacebookはPHPベースのWebページを月間4000億ページ・ビュー以上提供しており、Webトラフィック全体の90%以上がHipHop経由だという。

[Facebook公式ブログへの投稿記事]