Добре, що Facebook зазнав багато змін і спочатку він не був розроблений для ефективності. Він був розрахований на те, щоб зробити свою роботу. Я абсолютно не маю уявлення, як виглядає код, і ви, мабуть, не знайдете багато інформації про нього (з очевидних причин безпеки та авторських прав), але просто погляньте на API. Подивіться на те, як часто вона змінюється і скільки не працює належним чином, більше, або взагалі.
Я думаю, що найбільший туз у рукаві - Хіпхоп.
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.
Також є PHP в JAVA через такі речі, як Смола / Кверк. Знову ж таки, він не підтримує все ...
Ще слід зазначити, що якщо ви використовуєте будь-який нестандартний модуль PHP, ви не зможете конвертувати цей код у C ++ або Java. Однак ... Давайте розглянемо модулі PHP. Вони складаються в C ++. Отже, якщо ви можете побудувати модулі PHP, які виконують такі речі (як розбір XML тощо), ви в основному (за вирахуванням деякої взаємодії) працюєте з однаковою швидкістю. Звичайно, ви не можете просто створити модуль PHP для кожної можливої потреби та всього свого додатка, оскільки вам доведеться перекомпілювати, і це буде набагато складніше кодувати тощо.
Однак ... Є кілька зручних модулів PHP, які можуть допомогти вирішити проблеми з швидкістю. Хоча в кінці дня у нас є ця дивовижна річ, відома як "хмара", і ми можемо масштабувати наші програми (PHP включено), так що це вже не має значення. Апаратура стає все дешевшою та дешевшою. Амазонка просто знизила ціни (знову ж таки).
Тож поки ви кодуєте свій додаток PHP навколо думки, що це знадобиться для одноденного масштабу ... Тоді я думаю, що ви все добре, і я не дуже впевнений, що я навіть переглянув Facebook і що вони зробили, бо коли вони це зробили, це був зовсім інший світ і зараз намагаються утримати цю інфраструктуру та підтримувати її ... Ну, ви отримуєте такі речі, як HipHop.
Тепер, як HipHop допоможе вам? Це не стане. Це не може. Ви починаєте свіжим, ви можете використовувати PHP 5.3. Я настійно рекомендую вивчити рамки PHP 5.3 та всі нові переваги, які PHP 5.3 приносить до таблиці разом із бібліотеками SPL, а також подумати про вашу базу даних. Ви, швидше за все, обслуговуєте вміст із бази даних, тому перегляньте MongoDB та інші типи баз даних, які не мають схеми та не орієнтовані на документи. Вони набагато швидше і краще для найбільш «поширеного» типу веб-сайту / програми.
Подивіться на НОВІ компанії, такі як Foursquare і Smugmug та деякі інші компанії, які використовують НОВУ технологію, і ЯК вони її використовують. Настільки ж успішний, як і Facebook, я, чесно кажучи, не став би на них шукати "як" створити ефективний веб-сайт / додаток. Я не кажу, що у них немає дуже (дуже) талановитих людей, які працюють там, які творчо вирішують (їх) проблеми ... Я також не кажу, що Facebook взагалі не чудова ідея і що це не так успішно, і ви не повинні отримувати від цього ідеї .... Я просто кажу, що якби ви могли переглянути весь їх вихідний код, ви, ймовірно, не отримали б від цього користі.