ようこそ!浜村拓夫の世界へ

    ブログ内検索

    最近の記事

    ブックマーク数の多い記事

    Blog Translation

    Powered By FC2ブログ

    Powered By FC2ブログ
    ブログやるならFC2ブログ


    FC2ブログ LOGIN

    with Ajax Amazon

    PHPをC++に変換するHipHop for PHP

    このエントリーを含むはてなブックマーク はてなブックマーク - PHPをC++に変換するHipHop for PHP あとで読む
    Facebookが、PHPのための便利なツールを公開するそうです。
    米Facebook、PHPコードをC++コードに変換して高速に実行する「HipHop for PHP」発表 - SourceForge.JP Magazine

    米Facebookは2月2日(米国時間)、PHPの性能と拡張性を改善するプロジェクト「HipHop for PHP」を発表した。
    PHPコードをC++に変換するプログラムで、すでにFacebook内で利用されているという。
    開発者によると、CPUの利用率を平均して50%削減可能としている。
    Facebookは今後、HipHop for PHPをGitHub上でオープンソースプロジェクトとして展開する。



    原文ページ(英語)
    http://developers.facebook.com/news.php?blog=1&story=358
    翻訳ページ(日本語)
    http://blog.candycane.jp/archives/275

    ・PHP=インタープリター言語(遅い)
    ・C++=コンパイル言語(速い)
    ・PHPをC++に変換して使えば速くなる、CPUの負担が低減する。→アプリケーションサーバの台数を減らせる。

    Facebookが作ったプロファイラー「XHProf」も便利だったから、これは期待できるかも。
    PHPのプロファイラー「XHProf」の使い方 - 浜村拓夫の世界

    HipHop for PHPが公開されたら、ちょっと中身を見てみよう。
    最近、SCMでGitがよく使われているな~。Gitの使い方も覚えておかなきゃ。

    入門Git入門Git
    (2009/09/19)
    濱野 純(Junio C Hamano)

    商品詳細を見る

    最近、Facebookのアクセス数は増えているらしい。
    Facebook、ユニーク訪問者数でいよいよYahooを射程にとらえる - TechCrunch

    2010年2月2日
    Facebookはすでにしばらく前からYahooにとって代わって世界第3位のウェブサイトになる可能性をみせていた(Googleが1位、Microsoftが2位、)。昨夏、FacebookはAOLを押しのけて世界第4位となった。


    これだけアクセスがあれば、HipHop for PHPのようなツールが役に立つんだな、
    …逆に言えば、PHPだと遅くて厳しいってことか。

    Gitの作者=Linuxの作者=リーナス氏は、C++は酷い言語だと言ってたけど、HipHop for PHPのコードはどうなっているだろうか?
    C++ はひどい言語だ。

    C++ はひどい言語だ。
    これは、多くの平均以下のプログラマーが使ってるためにさらに輪をかけてゲロゲロになっていて、どうしようもないゴミが簡単に生産されるようになってる。

    C++ はトンでもなく悪い設計の元になりうる。
    どうせこの言語ではいつも STL やら Boost やら、その他ゲロゲロベロベロの「素敵な」ライブラリの機能を使って、それがあんたのプログラムに「役立つ」んだろうが、以下のことが起きる:

    - うまく動かないときにもたらされる際限のない苦痛 (あと STL とか、特に Boost が
    安定してるとか移植性があるとかいう奴は、どいつもこいつも大ウソつきで、
    もはや笑えるレベルを超えている)

    - 非効率な抽象プログラミングモデルで、2年たった後にこれらが実はそんなに
    効率的じゃなかったことに気づくケース。でもそのときにはすでに全部の
    コードがその素晴らしいオブジェクトモデルに依存していて、直すためには
    アプリ全体を書き直さなきゃなんない。

    言いかえれば、唯一まともで、効率がよくて、システムレベルで使えて、移植性があるC++ ってのは、基本的に C で使える機能だけに限ったときなんだ。
    そして C だけに限定するってことは、他の人がそれをめちゃくちゃにしないってことで、ついでに沢山のプログラマが実際に低水準の問題を理解することができて、アホらしい「オブジェクト・モデル」のたわごとを持ちこまないってことだ。


    関連記事

    コメント

    コメントの投稿


    管理者にだけ表示を許可する

    トラックバック

    トラックバックURL:
    http://hamamuratakuo.blog61.fc2.com/tb.php/470-6c003e65

    FC2Ad