まあFacebookは多くの変更を経て、もともと効率的であるように設計されていませんでした。それはその仕事をするように設計されました。私はコードがどのように見えるかまったくわからないので、(明らかにセキュリティと著作権の理由で)コードに関する多くの情報を見つけられないでしょうが、APIを見てください。どれくらいの頻度で変化し、どれだけ正しく、またはまったく機能しないかを確認します。
彼らの最大のエースはHiphopだと思います。
http://developers.facebook.com/blog/post/358
HipHopはご自分で使用できます。https:
//github.com/facebook/hiphop-php/wiki
しかし、私に尋ねると、それは非常に野心的で、おそらく時間を浪費する作業です。Hiphopがサポートするのはそれほど多くなく、単にすべてをC ++に変換することはできません。これは何を教えてくれるのでしょうか?まあ、それはFacebookがPHP言語を完全に活用していないことを私たちに伝えます。最新の5.3を使用していないので、PHP 4と互換性のあるものはまだたくさんあります。そうしないと、HipHopを使用できませんでした。HipHopは優れたアイデアであり、拡大および拡張する必要がありますが、現在の状態では、新しいPHPアプリを構築している多くの人にとってはあまり役に立ちません。
Resin / Quercusなどを介したPHPからJAVAへの変換もあります。繰り返しますが、すべてをサポートしているわけではありません...
注意すべきもう1つの点は、非標準のPHPモジュールを使用すると、そのコードをC ++またはJavaに変換できなくなることです。ただし、PHPモジュールを見てみましょう。それらはC ++でコンパイルされています。したがって、(XMLの解析などの)処理を行うPHPモジュールを構築できる場合、基本的には(一部の操作を除いて)同じ速度で動作しています。もちろん、再コンパイルする必要があり、コーディングがはるかに困難になるため、あらゆる可能性のあるニーズとアプリ全体に対してPHPモジュールを作成することはできません。
ただし...速度の問題を解決するのに役立ついくつかの便利なPHPモジュールがあります。結局のところ、「クラウド」と呼ばれるこの素晴らしいものがあります。これを使用して、アプリケーション(PHPを含む)をスケーリングできるため、それほど問題になりません。ハードウェアはどんどん安くなっています。Amazonは価格について(再び)値下げしました。
だから、あなたのPHPアプリを1日スケールにする必要があるという考えでコーディングしている限り...あなたは大丈夫だと思いますし、Facebookと彼らが何をしたかさえも私が見ているとは確信が持てません。彼らはそれをしました、それは完全に異なる世界でした、そして今そのインフラストラクチャを保持してそれを維持しようとしています...まあ、あなたはHipHopのようなものを得ます。
では、HipHopはどのように役立ちますか?それはしません。できません。新しく始めました。PHP5.3を使用できます。PHP 5.3フレームワークと、PHP 5.3がSPLライブラリとともにテーブルにもたらすすべての新しい利点を検討し、データベースについても検討することを強くお勧めします。データベースからコンテンツを提供している可能性が高いので、MongoDBや、スキーマレスでドキュメント指向のその他のタイプのデータベースを確認してください。最も「一般的な」タイプのWebサイト/アプリでは、はるかに高速で優れています。
FoursquareやSmugmugのような新しい会社と、新しいテクノロジーを利用している他の会社と、それをどのように使っているかを見てください。Facebookほど成功しているので、私は正直に言って、効率的なWebサイト/アプリを構築するための「方法」についてそれらを検討しません。私は彼らがそこで(彼らの)問題を創造的に解決している非常に(非常に)才能のある人々がいないと言っているのではありません...成功し、そこからアイデアを得るべきではないということです。ソースコード全体を表示できたとしても、それから利益を得ることはできないでしょう。